C程编程问题,编写程序,将输入的一个英语句子各单词分行打印,一行打印一个单词。我写的这个有何问题?

供稿:hz-xin.com     日期:2025-01-15
用C编写一个程序。 以每行一个单词的形式打印其输入。

#include "stdio.h"
void main()
{
char ch;
char str[100];
int i=0;
int haveWord=0;

while( (ch=getchar()) != '
')
{
if(ch!=' ')
{
str[i++]=ch;
if(haveWord==0)
haveWord=1;
}
else if(haveWord==1)
{
str[i]='\0';
printf("%s
",str);
haveWord=0;
i=0;
}
}

if(haveWord==1)
{
str[i]='\0';
printf("%s
",str);
}
}

答:直接点击空格键。

修改两个地方:
if(s[i]=' ') 改为 if(s[i]==' ')
putchar('s[i]'); 改为 putchar(s[i]);

修改后整体程序如下:
#include <stdio.h>
int main()
{
char s[100];
int i;
gets(s);
for(i=0;s[i]!='\0';i++)
if(s[i]==' ')
putchar('\n');
else
putchar(s[i]);

return 0;
}

putchar('\n');错了吧····

C程编程问题,编写程序,将输入的一个英语句子各单词分行打印,一行打印...
if(s[i]=' ') 改为 if(s[i]==' ')putchar('s[i]'); 改为 putchar(s[i]);修改后整体程序如下:include <stdio.h> int main(){ char s[100];int i;gets(s);for(i=0;s[i]!='\\0';i++)if(s[i]==' ')putchar('\\n');else putchar(s[i]);return 0;} ...

求编程: 试编写程序,将用户输入的一个十进制正整数转化为十六进制输出...
void convert(unsigned long int ,unsigned long int);void main(){ unsigned long int sort;unsigned long int n;do { printf("Please enter two numbers n and sort");printf("\\n n 代表你要转化的十进制正整数:");scanf("%ld",&n);printf("\\n sort 代表你要转化的类型你可以输 2...

C语言编写程序 :输入一个正整数,将其逆序输出。例如,输入12345,输出54321...
分析:首先,输入的是一个整数,因此最前面一位数不是零,所以我们可以用除10取余法写。a = num % 10 就是输出数字的最后一位 然后除10剔除数字最后一位,这样数字倒数第二位就会输出。以此类推,就能逆序输出数字。

C语言编程 、对输入的任意一个数按照四舍五入法取整。编写完整程序,要 ...
{ return (int)(a+0.5);} int main(){ float x;printf("请输入一个浮点数:");scanf("%f",&x);printf("四舍五入的结果是:%d",round1(x)) ;return 0;}

c语言程序设计答案 编程实现,从键盘输入一个字符,则输出其后的字符,如...
程序源码如下:define _CRT_SECURE_NO_WARNINGS\/\/VS环境下需要,VC不需要 include<stdio.h> void main(){ char a;\/\/定义一个字符 printf("请输入一个字符:");\/\/文字提示 scanf("%c", &a);\/\/输入一个字符 printf("其后续字符为:");\/\/文字提示 printf("%c\\n", a + 1);\/\/输出其...

急急急!!!数据结构编程题:写一个程序,将输入的十进制数据M 转换为八进 ...
\/\/进制转换 {int x;stack s;initstack(s);while(n!=0){ push(s,n%N);n\/=N;} while(!isempty(s)){pop(s,x);printf("%d",x);} clearstack(s);} int main(){ int n;printf("请输入一十进制数:");scanf("%d",&n);printf("转化后的数是:");convert(n);return 0;} ...

c语言编程 编写一程序,输入由一个‘0’,‘1’组成的字符序列,结束标志...
include <string.h> include <math.h> void main(){ printf("输入字符以‘*’结束输入\\n") ;char ch[100] ;int i =0 ;char temp ;while((temp = getchar()) != '*'){ ch[i++] = temp ;} ch[i] = '\\0' ;int Chsize ;Chsize = strlen(ch) ;int *p = new int[Chsize]...

编写一个程序,输入一个数,判断它是否是5的倍数
\/\/\/c语言的,inlcude<stdio.h> void main(){ int a;printf("please input a number:\\n");scanf("%d",&a);if(a%5)printf("this number 不是5的倍数!\\n");else printf("this number 是5的倍数!\\n");}

C语言,编写一个程序,用户输入运算符和四则运算符,输出计算结果_百度...
首先,我们需要定义一个变量op来存储用户输入的运算符。接下来,通过while循环,程序将不断请求用户输入算式。当用户输入的两个数字均为0时,程序将终止运行。在while循环内部,使用printf函数向用户展示提示信息:“请输入一个算式(二数都为0时结束):”。这将引导用户输入算式。值得注意的是,为了保证...

编写程序,输入一个一堆数组,寻找并输出数组中的最大值和最小值_百度...
C语言编程题定义 “int a[10]”,从键盘输入10个元素,求最大 最小值及所在元素的下标 include<stdio.h> int main(){int i,imax=0,imin=0,a[10];for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=1;i<10;i++)if(a[i]>a[imax])imax=i;else if(a[i]...