c语言利用数组处理批量数据实验报告,实验6利用数组处理批量数据.doc

实验6利用数组处理批量数据

实验6 利用数组处理批量数据

班级学号姓名

一、实验目的

① 掌握一维数组和二维数组的定义、赋值和输入输出的方法;

② 掌握字符数组和字符串函数的使用;

③ 掌握与数组有关的算法(特别是排序算法)。

二、实验内容

编写以下程序并调试。

1、编写C程序:分别用①选择法和②冒泡法对10个整数排序。(选择法可以参考邮件附件:第六章 数组,冒泡法参考课本P147页)

#include

#include

void main( )

{ int i,j,t,a[10];

printf("input 10 nubers:\n");

for(i=0;i<10;i++)

scanf("%d",&a[i]);

printf("\n");

for(j=0;j<9;j++)

for(i=0;i<9-j;i++)

if(a[i]>a[i+1])

{t=a[i];a[i]=a[i+1];a[i+1]=t;}

printf("the sorted numbers :\n");

for(i=0;i<10;i++)

printf("%5d",a[i]);

printf("\n");

}

2、编写C程序:将一个数组中的值逆序重新排放。

#include

#include

void main( )

{ int i,a[10];

for(i=0;i<10;i++)

scanf("%d",&a[i]);

for(i=9;i>=0;i--)

printf("%5d",a[i]);

printf("\n");

}

3、有一篇文章共有3行文字每行有个80字符要求分别统计出其中英文大写字母、小写字母、空格以及其它字符的个数#include

int main()

{

int a=0,b=0,e=0,d=0,i,j;

char t[3][80];

for (i=0;i<3;i++)

{

printf("请输入每一行的文字 %d:\n",i+1);

gets(t[i]);

for (j=0;j<80 && t[i][j]!='\0';j++)

{

if(t[i][j]>='a'&&t[i][j]<='z'||t[i][j]>='A'&&t[i][j]<='Z')

a=a++;

else if(t[i][j]==' ')

b=b++;

else if(t[i][j]>='0'&&t[i][j]<='9')

e=e++;

else d=d++;

}

}

printf("英文字母个数:%d\n空格个数:%d\n数字个数:%d\n其他个数:%d\n",a,b,e,d);

return 0;

}

* * * * *

* * * * *

* * * * *

* * * * *

* * * * *

#include

int main()

{

char d[][9]={{'*','*','*','*','*'},{' ','*','*','*','*','*'},{' ',' ','*','*','*','*','*'},

{' ',' ',' ','*','*','*','*','*'},{' ',' ',' ',' ','*','*','*','*','*'}};

int i,j;

for(i=0;i<5;i++)

{

for(j=0;j<9;j++)

printf("%c",d[i][j]);

printf("\n");

}

return 0;

}

5、有一行电文译文下面规律译成密码:

A->Z a->z

B->Y b->y

C->X c->x

即第一个字母变成第26个字母,第i个字母变成第(26-i+1)个字母。非字母字符不变,要求编程序将密码回原文,并打印出密码和原文。

#include

int main()

{

int n,j;

char a[100],b[100];

printf("请输入电文密码:");

gets(a);

printf("\n电文密码:%s",a);

for (j=0;j<100 && a[j]!='\0';j++)

{

if ((a[j]>='A') && (a[j]<='Z'))

b[j]=155-a[j];

else if ((a[j]>='a') && (a[j]<='z'))

b[j]=219-a[j];

else

b[j]=a[j];

}

n=j;

printf("\n原文:");

for (j=0;j

put

你可能感兴趣的:(c语言利用数组处理批量数据实验报告,实验6利用数组处理批量数据.doc)