c语言练习(2)

来源:互联网 发布:淘宝天天特价首页 编辑:程序博客网 时间:2024/05/17 07:47

1、输入一行字符,分别统计出其中字母、空格、数字和其他字符的个数。

#include <stdio.h>
void main()
{
 int letter, space, digit, other;
 char ch;
 letter = space = digit = other = 0;
 while ((ch = getchar ()) != '\n')
 {
  if (ch>='a' && ch <= 'z' || ch>='A'&&ch<='Z')
   letter++;
  else if (ch>='0' && ch <='9')
   digit++;
  else if (ch == ' ')
   space++;
  else
   other++;
 }
 printf ("字母:%d\n", letter);
 printf ("空格:%d\n", space);
 printf ("数字:%d\n", digit);
 printf ("其它字符:%d\n", other);
 getch();
}


2、求下列试子的值:1-1/2+1/3-1/4+……+1/99-1/100,将结果输出。

#include<stdio.h>
int main()
{int i,k;
double sum,f;
sum=1.0;
k=1;
for(i=2;i<=100;i++){
k=-k;
f=1.0/i;
sum=sum+k*f;}
printf("%.8f\n",sum);
return 0;

}


3、矩阵转置:将一个m行n列矩阵(即m×n矩阵)的每一行转置成另一个n×m矩阵的相应列

   例如:将2*3的矩阵转置后输出:

   即将    1 23   转置    1  4

           45 6            2  5

                            3  6

 #include <stdio.h>
int main()
{
int a[4][3];
int i,j;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%d",&a[j][i]);
for(i=0;i<4;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("\n");
}
return 0;
}