37. 假设字符数组存放有三行字符,每行的长度最长为80个字符,编程:分别统计出其中大写字母、小写字母、数字字符、空格字符以及其它字符的个数。49. 编一子程序实现十进制数转换为其它进制数。主程序将十进制数43 和17分别转换为二进制数和八进制数。51. 编程输入一个整数,若为四位正整数则要求正确分离出其个、十、百、千位及中间的两位数并分别输出,如输入的是1234,则输出应该为4、3、2、1、23;否则给出一个出错提示。
第1个回答 2011-09-27
第37题:
char s[3][80];
int num1,num2,num3,num4,num5;
for(i=0;i<3;i++)
{
for(j=0;j<80;j++)
{
if ((s[i][j] <= 'Z') && (s[i][j] >= 'A') )
{
NUM1++;
}
else if ((s[i][j] <= 'z') && (s[i][j] >= 'a') )
{
NUM2++;
}
else if ((s[i][j] <= '9') && (s[i][j] >= '0') )
{
NUM3++;
}
else if (s[i][j] == ' ')
{
NUM4++;
}
}
}
NUM5 = 240-(NUM1+NUM2+NUM3+NUM4);
第51题:
#include <stdio.h>
main( )
{
int num=1234;
//printf("please enter the number!\n");
//scanf("%d",&num);
if ((num<10000)&&(num>999))
{/*1234*/
printf("%d\n",num-(num/10)*10);
printf("%d\n",(num-(num/100)*100)/10);
printf("%d\n",(num-(num/1000)*1000)/100);
printf("%d\n",num/1000);
printf("%d\n",(num-(num/1000)*1000)/10);
}
else
{
printf("error!\n");
}
}本回答被提问者采纳
char s[3][80];
int num1,num2,num3,num4,num5;
for(i=0;i<3;i++)
{
for(j=0;j<80;j++)
{
if ((s[i][j] <= 'Z') && (s[i][j] >= 'A') )
{
NUM1++;
}
else if ((s[i][j] <= 'z') && (s[i][j] >= 'a') )
{
NUM2++;
}
else if ((s[i][j] <= '9') && (s[i][j] >= '0') )
{
NUM3++;
}
else if (s[i][j] == ' ')
{
NUM4++;
}
}
}
NUM5 = 240-(NUM1+NUM2+NUM3+NUM4);
第51题:
#include <stdio.h>
main( )
{
int num=1234;
//printf("please enter the number!\n");
//scanf("%d",&num);
if ((num<10000)&&(num>999))
{/*1234*/
printf("%d\n",num-(num/10)*10);
printf("%d\n",(num-(num/100)*100)/10);
printf("%d\n",(num-(num/1000)*1000)/100);
printf("%d\n",num/1000);
printf("%d\n",(num-(num/1000)*1000)/10);
}
else
{
printf("error!\n");
}
}本回答被提问者采纳
第2个回答 2011-09-28
49题
#include "stdafx.h"
void zhuanhuan(int i,int j)
{
if(j==2)
{if(i/2>0)zhuanhuan(i/2,2);printf("%d",i%2);
}
else
{
if(j==8)
{if(i/8>0)zhuanhuan(i/8,8);printf("%d",i%8);
}
else
{if(j==16)
{if(i/16>0)zhuanhuan(i/16,16);printf("%d",i%16);}
}
}
}
int main(int argc, char* argv[])
{int i,j;
do
{
printf("\n输入转换进制数和被转换数\n");
scanf("%d%d",&j,&i);
zhuanhuan(i,j);
printf("\nwhether to continue(y/n)\n");
}
while(getchar()&&getchar()=='y');
return 0;
}
#include "stdafx.h"
void zhuanhuan(int i,int j)
{
if(j==2)
{if(i/2>0)zhuanhuan(i/2,2);printf("%d",i%2);
}
else
{
if(j==8)
{if(i/8>0)zhuanhuan(i/8,8);printf("%d",i%8);
}
else
{if(j==16)
{if(i/16>0)zhuanhuan(i/16,16);printf("%d",i%16);}
}
}
}
int main(int argc, char* argv[])
{int i,j;
do
{
printf("\n输入转换进制数和被转换数\n");
scanf("%d%d",&j,&i);
zhuanhuan(i,j);
printf("\nwhether to continue(y/n)\n");
}
while(getchar()&&getchar()=='y');
return 0;
}
第3个回答 2011-09-27
这些都不难,你自己买本书学一下就可以做的,都是经典的算法。