//习题7-4
//求矩阵各行元素之和
//二维数组
#include<stdio.h>
int main()
{
int m,n,i,j;
int sum=0;
int a[100][100];
printf("Enter m: ");
scanf("%d",&m);
printf("Enter n: ");
scanf("%d",&n);
printf("Enter numbers: ");
for(i=0; i<m; i++)
for(j=0; j<n; j++)
scanf("%d",&a[i][j]);
for(i=0; i<m; i++)
{
for(j=0; j<n; j++)
{
printf("%4d",a[i][j]);
}
printf("\n");
}
for( i=0; i<m; i++ ){
sum = 0;
for ( j=0; j<n; j++ )
sum += a[i][j];
printf("sum of %d rows is: %d\n", i, sum );//每次i为固定值时,累加。
}
return 0;
}
Enter m: 2
Enter n: 2
Enter numbers: 1 2 3 4
1 2
3 4
sum of 0 rows is: 3
sum of 1 rows is: 7
//习题7-6
//输入字符串,统计大写辅音字母
#include<stdio.h>
int main()
{
char a[80],ch;
int n,count,i;
printf("enter a string: ");
i = 0;
while( (a[i] =getchar() ) != '\n' )
i++;
a[i] = '\0';
count=0;
for(i=0; a[i]!='\0'; i++)
{
if(a[i]>'A'&&a[i]<='Z'&&a[i]!='E'&&a[i]!='I'&&a[i]!='O'&&a[i]!='U')
count++;
}
printf("%d\n",count);
return 0;
}
enter a string: ASCDVU
4
//改进
#include<stdio.h>
int main()
{
char a[80],ch;
int n,count,i;
printf("enter a string: ");
scanf("%s",&a); //更加简便的输入字符串,后面直接写a
count=0;
for(i=0; a[i]!='\0'; i++)
{
if(a[i]>'A'&&a[i]<='Z'&&a[i]!='E'&&a[i]!='I'&&a[i]!='O'&&a[i]!='U')
count++;
}
printf("%d\n",count);
return 0;
}
//习题7-7
//字符串替换
//A-Z,B-Y,C-X....
#include<stdio.h>
int main()
{
int n,i;
int a[80];
printf("enter a string: ");
i=0;
while((a[i]=getchar())!='\n')
i++;
a[i]='\0';
for(i=0; a[i]!='\0'; i++)
{
if(a[i]>='A'&&a[i]<='Z')
a[i]='Z'-(a[i]-'A');
}
for(i=0; a[i]!='\0'; i++)
{
putchar(a[i]);
}
return 0;
}
enter a string: ASDF
ZHWU