1.把字符转换成数字并输出
char a[]="-12345";int i,m=0;
for(i=0;i<=5;i++)
printf("a[%d]=%c",i,a[i]);
for(i=1;i<=5;i++)
m=m*10+a[i]-'0';
printf("m=%d\n",-1*m);
注意:a[i]-'0'才能转变成数字!!!!!
2.行列变化
/* Note:Your choice is C IDE */
#include "stdio.h"
int fun(int a[][4])
{int i,j,temp;
for(i=0;i<4;i++)
{
for(j=i+1;j<4;j++)
{temp=a[i][j];
a[i][j]=a[j][i];
a[j][i]=temp;
}
}
}
void main()
{
int a[4][4]={4,3,2,1,5,6,7,8,9,0,11,12,13,14,23,34,},i,count=0,j;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{printf("a[%d][%d]=%d ",i,j,a[i][j]);count++;if(count%4==0) printf("\n");}
}
fun(a);
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{printf("a[%d][%d]=%d ",i,j,a[i][j]);count++;if(count%4==0) printf("\n");}}
}
3.将两个数组的数字排序
void main()
{
int a[20]={1,4,6,8,21,23,35,56,89,98,678,0},b[20]={2,5,7,9,10,11,15,0},c[40],i=0,j=0,k=0;
while(a[i]!=0&&b[j]!=0)
{
if(a[i]>b[j])
{c[k]=b[j];j++;}
else
{c[k]=a[i];i++;}
k++;
}
while(a[i]==0&&b[j]!=0)
c[k++]=b[j++];
while(b[j]==0&&a[i]!=0)
c[k++]=a[i++];
c[k]=0;
for(k=0;c[k]!=0;k++)
printf("%5d",c[k]);
}
4.将数组中的数字逆序存放
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
int a[10],t,*p,count=0,i;
p=a;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
p=a;
for(i=0;i<10;i++)
printf("%3d",*p++);
printf("\n");
for(i=0;i<5;i++)
{
t=a[i];
a[i]=a[9-i];
a[9-i]=t;
}
p=a;
for(i=0;i<10;i++)
{printf("%3d",*p++);count++;if(count%5==0) printf("\n");}
}
5.将数组中的元素前移n 位
/* Note:Your choice is C IDE */
#include "stdio.h"
voi