| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2001 人关注过本帖
标题:问几道题 麻烦大家我
只看楼主 加入收藏
caiqiufu
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2006-12-14
收藏
得分:0 
while(str[i]!='\r')改成
while(str[i]!='\n')就可以了
2006-12-17 00:36
hujian100
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-9-14
收藏
得分:0 
还是不行啊!!!

2006-12-17 12:28
linx218
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2006-12-10
收藏
得分:0 

把for(i=0;str[i]=='\0';i++)改成for(i=0;str[i]!='\0';i++)就行了

2006-12-17 14:14
caiqiufu
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2006-12-14
收藏
得分:0 
while(str[i]!='\r')改成
while(str[i]!='\n')就可以了

我调试过

可以的啊
2006-12-17 15:18
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
收藏
得分:0 
#include <stdio.h>
main()
{
char str[50];
int i=0;
int letter_sum=0,
number_sum=0,
space_sum=0,
other_sum=0;
printf("Please input a string of characters:\n");
scanf("%c",&str[i]);
while(str[i]!='\n')
{
i++;
scanf("%c",&str[i]);
}
str[i]='\0';
for(i=0;str[i]!='\0';i++)
{
if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))
letter_sum++;
else if(str[i]>='0'&&str[i]<='9')
number_sum++;
else if(str[i]==' ')
space_sum++;
else
other_sum++;
}
printf("There are %d letters in the string.\n",letter_sum);
printf("There are %d numbers in the string.\n",number_sum);
printf("There are %d spaces in the string.\n",space_sum);
printf("There are %d other characters in the string.\n",other_sum);
}

My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2006-12-17 20:23
hujian100
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-9-14
收藏
得分:0 
多谢指点!突然发现自己好粗心。

2006-12-17 21:23
kriss
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-12-17
收藏
得分:0 

带下划线的为程序修改部分,已运行通过。如下:
#include <stdio.h>
main()
{
char str[50];
int i;
int letter_sum=0,
number_sum=0,
space_sum=0,
other_sum=0;
printf("Please input a string of characters:\n");
for(i=0;str[i-1]!='\n';i++)
scanf("%c",&str[i]);
str[i-1]='\0';
for(i=0;str[i]!='\0';i++)
{
if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z'))
letter_sum++;
else if(str[i]>='0'&&str[i]<='9')
number_sum++;
else if(str[i]==' ')
space_sum++;
else
other_sum++;
}
printf("There are %d letters in the string.\n",letter_sum);
printf("There are %d numbers in the string.\n",number_sum);
printf("There are %d spaces in the string.\n",space_sum);
printf("There are %d other characters in the string.",other_sum);

getch();
return(0);
}

2006-12-17 21:44
neverTheSame
Rank: 3Rank: 3
来 自:江西农业大学
等 级:新手上路
威 望:9
帖 子:1511
专家分:0
注 册:2006-11-24
收藏
得分:0 

/*两个数的最大公约数和最小公倍数*/
#include<stdio.h>
#include<conio.h>
void main(void)
{
int number1,number2;
int temp,temp1,temp2;
clrscr();/*清屏*/
printf("Input two number:\n");
scanf("%d,%d",&number1,&number2);
temp1=number1;temp2=number2;
if(number1<number2)/*保证:number1存放较大的数,number2存放较小的数*/
{
temp=number1;number1=number2;number1=temp;
}
while(number2!=0)
{
temp=number1%number2;
number1=number2;
number2=temp;
}
printf("最大公约数:%d\n",number1);
/*最小公倍数=(两个数之积)/最大公约数*/
printf("最小公倍数:%d",((temp1*temp2)/number1));
getch();/*暂停*/
}


wap酷禾网(http://wap.),提供免费的、优质的、快捷的wap资源下载服务。
2006-12-17 23:38
neverTheSame
Rank: 3Rank: 3
来 自:江西农业大学
等 级:新手上路
威 望:9
帖 子:1511
专家分:0
注 册:2006-11-24
收藏
得分:0 
/*输入一行字符分别统计英文字母,空格,数字和其它字符的个数
*/
#include<stdio.h>
#include<conio.h>
#include<string.h>
#define MaxSize 20/*宏定义字符数组的最大容量*/
void main(void)
{
char string[MaxSize];
int i=0,j=0;
int englishNum=0;/*英文字母*/
int blankNum=0;/*空格*/
int numberNum=0;/*数字*/
int elseNum=0;/*其它字符*/
clrscr();
printf("Please input charString:\n");
while(1)
{
string[i]=getchar();/*从标准输入设备中读入字符*/
if(string[i]==10)
/*当输入的是回车换行符时,结束。
注意,这时string[i]==10 而不是string[i]==13
因为这时,传入的只换行符*/
{
string[i]='\0';
break;
}
i++;
}
for(j=0;j<i;j++)
{
if(string[j]==' ')
blankNum++;
else if((string[j]>=65 && string[j]<=90)
|| (string[j]>=97 && string[j]<=122))
englishNum++;
else if(string[j]>=48 && string[j]<=57)
numberNum++;
else
elseNum++;
}
printf("englishNum:%d\n",englishNum);
printf("blankNum:%d\n",blankNum);
printf("numberNum:%d\n",numberNum);
printf("elseNum:%d",elseNum);
getch();
}

wap酷禾网(http://wap.),提供免费的、优质的、快捷的wap资源下载服务。
2006-12-18 00:23
neverTheSame
Rank: 3Rank: 3
来 自:江西农业大学
等 级:新手上路
威 望:9
帖 子:1511
专家分:0
注 册:2006-11-24
收藏
得分:0 
/*一个球从一百米的高落下,每次落下返回原来高度的一半再落下,求它在第十次落地时,共经过了多少米,第十次反弹多高*/
#include<stdio.h>
#include<conio.h>
#define TIME 10/*宏定义求第十次落地时的反弹高度*/
float initV=100;/*初始化球是从100米的高空落下*/
int time=0;/*初始化次数*/
void getValue(float*);/*声明函数*/
void main(void)
{
clrscr();/*清屏*/
if(TIME>0)
getValue(&initV);/*函数调用*/
printf("%f",initV);/*输出第TIME次反弹的高度*/
getch();/*暂停*/
}
void getValue(float *initValue)/**/
{
(*initValue)=(*initValue)/2;/*反弹高度减半*/
time++;/*次数加1*/
if(time==TIME)/*达到要求结束*/
return;
else
getValue(initValue);/*调用本身*/
}

wap酷禾网(http://wap.),提供免费的、优质的、快捷的wap资源下载服务。
2006-12-18 00:49
快速回复:问几道题 麻烦大家我
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.045445 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved