高手帮忙看程序啊解决思路
高手帮忙看程序啊
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_LEN 1001
int main()
{
char input[MAX_LEN];
int len;
char longest[MAX_LEN];
int longest_len;
longest_len=-1;
while(gets(input)!=NULL)
{
len=strlen(input);
if(len>longest_len)
{
longest_len=len;
strcpy(longest,input);
}
}
if(longest_len>=0)
puts(longest);
return EXIT_SUCCESS;
}
这个程序是让一行行的读取输入行,直至到达文件尾,算出每行输入行的长度,然后把最长的那行打印出来。 可是发现只能输入 一直都没有打印的
#include <stdio.h>
#include <stdlib.h>
int main()
{
int c;
char sum=-1;
while((c=getchar())!=EOF)
{
putchar(c);
sum+=c;
}
printf("%d\n",sum);
return EXIT_SUCCESS;
}
这个程序是 从标准输入读取一些字符,并吧他们写道标准输出上。董事应该计算checksum值,并写在字符的后面
俩程序都有错误,但是我不知道哪错了,我是一点儿都不懂啊 求高手指教 小弟谢谢了!!
------解决方案--------------------
while(gets(input)!=NULL)
修改为
while(strcmp(gets(input),"")!=0)
------解决方案--------------------
while(gets(input))
{
len=strlen(input);
if(len>longest_len)
{
longest_len=len;
strcpy(longest,input);
}
if (strcmp(input, "NULL") == 0)
break; }
你的退出条件有问题,所以会死循环。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_LEN 1001
int main()
{
char input[MAX_LEN];
int len;
char longest[MAX_LEN];
int longest_len;
longest_len=-1;
while(gets(input)!=NULL)
{
len=strlen(input);
if(len>longest_len)
{
longest_len=len;
strcpy(longest,input);
}
}
if(longest_len>=0)
puts(longest);
return EXIT_SUCCESS;
}
这个程序是让一行行的读取输入行,直至到达文件尾,算出每行输入行的长度,然后把最长的那行打印出来。 可是发现只能输入 一直都没有打印的
#include <stdio.h>
#include <stdlib.h>
int main()
{
int c;
char sum=-1;
while((c=getchar())!=EOF)
{
putchar(c);
sum+=c;
}
printf("%d\n",sum);
return EXIT_SUCCESS;
}
这个程序是 从标准输入读取一些字符,并吧他们写道标准输出上。董事应该计算checksum值,并写在字符的后面
俩程序都有错误,但是我不知道哪错了,我是一点儿都不懂啊 求高手指教 小弟谢谢了!!
------解决方案--------------------
while(gets(input)!=NULL)
修改为
while(strcmp(gets(input),"")!=0)
------解决方案--------------------
while(gets(input))
{
len=strlen(input);
if(len>longest_len)
{
longest_len=len;
strcpy(longest,input);
}
if (strcmp(input, "NULL") == 0)
break; }
你的退出条件有问题,所以会死循环。