题目太多了!又容易又多!
1、
#include
main()
{
int a[]={8,6,5,4,1};
int num,i,t;
num=sizeof(a)/sizeof(int);
printf("原始数组:");
for(i=0;i
printf("%d ",a[i]);
}
printf("\n");
for(i=0;i
t=a[i];
a[i]=a[num-i-1];
a[num-i-1]=t;
}
printf("交换后的数组:");
for(i=0;i
printf("%d ",a[i]);
}
printf("\n");
}
2、
#include
main()
{
int all,normal,digit,para;
char ch;
all=normal=0;
digit=para=0;
while((ch=getchar())!='#')
{
switch(ch)
{
case '\n'://回车符
para++;
case ' '://空格
case '\t'://Tab
all++;
break;
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
digit++;
normal++;
all++;
break;
default:
normal++;
all++;
break;
}
}
printf("含空格、Tab、回车符时的字符个数:%d\n",all);
printf("不含这些字符时的字符个数:%d\n",normal);
printf("数字个数:%d, 文章的段落数:%d\n",digit,para);
}
6、
#include
#define N 3//手机号码的数目
main()
{
char a[N][100]={0};
char b[]="1234";
int i,j;
printf("输入%d个学生的手机号:",N);
for(i=0;i
scanf("%s",a[i]);
}
printf("后4位1234的所有手机号码:\n");
for(i=0;i
for(j=0;a[i][j]!='\0';j++)
;
if(a[i][j-4]==b[0]
&&a[i][j-3]==b[1]
&&a[i][j-2]==b[2]
&&a[i][j-1]==b[3])
{
puts(a[i]);
}
}
}
8、
#include
#define N 2//周数
#define M 5//星期数
main()
{
int a[N][M]={0};
char b[]="1234";
int i,j;
printf("输入两周内某学生星期一到星期五的消费额:",N);
for(i=0;i
scanf("%d",&a[i][j]);
}
printf("第2周星期三所用金额数:%d\n",a[1][2]);
}
九、
#include
#define M 32
main()
{
int m,n,k=0,bin[M]={0};
printf("请输入十进制正整数: ");
scanf("%d",&m);
printf("十进制正整数%d转换成二进制数为: ",m);
while(m!=0)
{
bin[k]=m%2;
m=m/2;
k++;
}
for(n=M-1;n>=0;n--)
{
printf("%d",bin[n]);
if(n%8==0)
{
printf(" ");
}
}
printf("\n");
}
十六进制转十进制数算法
十六进制中,ABCDEF分别表示10 11 12 13 14 15
个位+十位×16+百位×256……
即:16的0,1,2……次方
例如5BB
11+11×16+5×256=1467
十进制转换十六进制
拿 十进制数 除以十六就可以了
10转16:
100以内一点的10转16心算比较快。10转16用传统的计算方式可以了,就是大于15小于256的10进制数除以16为的值为十位的16进制数,其余数为个位的16进制数,没余数则个位为0。如61的16进制是3D,61除以16得3余13,3作十位数,13转成D为各位数。
十进制转换二进制算法
比如1994 转换成二进制如下!
1994/2=997-----------0
997/2=498------------1
498/2=249------------0
249/2=124------------1
124/2=62-------------0
62/2 =31-------------0
31/2 =15-------------1
15/2 =7--------------1
7/2 =3--------------1
3/2 =1--------------1
1/2=0 --------------1
除到零为止.书上有说:除到零.最后一位剩1
这样加起来就是1994了.
参考资料:谭浩强(师范院校教科书)
二进制转换十进制
例如:110110101
转为10进制的方法是1+0*2+1*4+0*8+1*16+1*32+0*64+1*128+1*256
就是依次往上递增2的次方
你好贪心啊,C语言要是自己做题的话要慢慢调试,一道题30分钟计,你的所有题还要5小时才能完成,何况有些题要更多时间,建议直接搜答案。