C语言 作业问题

来源:百度知道 编辑:UC知道 时间:2024/07/06 09:49:33
题目是:编写一个程序,使用函数统计一串字符中小写字母的个数,该函数参数为一个字符数组,返回值为小写字母的个数.在主函数中从键盘接收一串字符,并调用统计函数求出小写字母的个数,然后输出.

#include<stdio.h>
int b(char*);
void main()
{
int i,total;
char num[50];
printf("输入一串字符:");
for(i=0;i<50;i++)
{if(getchar()=='\n')
break;
else scanf("%c",&num[i]);
}
total=b(num);
printf("\n小写字母的个数为%d个",total);
}
int b(char num2[50])
{
int sum=0,j;
for(j=0;j<50;j++)
{
if(num2[j]>='a'&&num2[j]<='z')
sum++;
}
return sum;
}#include<stdio.h>
int b(char*);
void main()
{
int i,total;
char num[50];
printf("输入一串字符:");
for(i=0;i<50;i++)
{if(getchar()=='\n')
break;
else scanf("%c",&num[i]);
}
total=b(num);
printf("\n小写字母的个数为%d个&q

给你改好了:我估计是你的b()函数的问题,你申明数组没有初始化,然后又依次检测50个字符。如果正好那块内存的值是一个小谢字符,你的结果就会出错。

#include<stdio.h>
#include <iostream>
int b(char*);
int main()
{
int i,total;
char num[50];
printf("输入一串字符:\n");
scanf("%s",num);
total=b(num);
printf("\n小写字母的个数为%d个",total);
system("pause");
}
int b(char num2[50])
{
int i = 0,sum = 0;
while(num2[i]!='\0')
{
if(num2[i]>='a'&&num2[i]<='z')
{
sum++;
}
i++;
}
return sum;
}

#include <stdio.h> void main() { float r,h,l,s,v; printf("请输入半径:"); scanf("%f",&r); printf("请输入圆柱高h:"); scanf("%f",&h); l=2*3.14*r; s=3.14*r*r; v=s*h; printf("圆周长为:%.2f\n" "圆面积为:%.2f\n" "圆柱体积为:%.2f\n",l,s,v); } 2,由题可以把题目分解为三步;(1)从