10.26

10.26

     1.c语言相关知识:

                       数组:一维数组;

                             二维数组;

                             多维数组;

                             字符数组;

     数组的概念及定义:是一种基本的构造类型,是一组相同数据类型的集合。数组中的元素在内存中连续存放;

     一维数组的定义格式:

                        类型说明符 数组名[常量表达式];

      例如:

           编程输入求任意10个整数的最大值。

           int main()

{

int a[10];

int i,max;

max=0;

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

{

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

}

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

    if(a[i]>max)

        max=a[i];

    printf("max=%d\n",max);

    return(0);

 }

        二维数组的定义和初始化:

                          格式:类型说明符 数组名【常量表达式】【常量表达式】

        例如:找出矩阵中的最大元素所在的位置。

              #include<stdio.h>

int main()

{

int a[3][4],i,j,row,col;

printf("enter 12 integers:\n");

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

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

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

    printf("\narry:\n");

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

    {

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

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

printf("\n");

}

row=col=0;

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

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

if(a[i][j]>a[row][col])

    {

     row=i;

col=j;

}

printf("max=a[%d][%d]=%d\n",row,col,a[row][col]);

return(0);

}

多维数组的应用和二维数组类似;

字符数组:

        字符数组定义举例:char c[10];

注意:当用标准函数scanfprinf对字符串整体输入或输出是,用格式控制符%s。但是%s读入时遇到空格或者回车就结束读操作,自动加结束标志\0,输入时遇到“\0”就结束输入操作,因此若读入的字符串包含空格就不能使用%s

        例如下面的程序:

                   int main()

{

char c[10]={'I',' ','a','m',' ','a',' ','b','o','y'};

int i;

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

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

printf("\n");

return(0);

}

也可以这样写:

int main()

{

char c[]={'I',' ','a','m',' ','a',' ','b','o','y','\0'};

printf("%s\n",c);

return(0);

}

由键盘输入一行字符(少于100个,以回车符为结束),要求分别统计出其中英文大写字母,小写字母,数字,空格和其他字符的个数。

 #include<stdio.h>

int main()

{

    char str[100];

int i=0,j,alpha1=0,alpha2=0,digit=0,space=0,other=0;

printf("please input a string<=100):\n");

while((str[i])=getchar()!='\n')

    i++;

    str[i]='\0';

    i=0;

    while(str[i]!='\0')

    {

     if(str[i]>='A'&&str[i]<='Z')

         alpha1++;

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

         alpha2++;

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

             digit++;

             else if(str[i]=' ')

                 space++;

                 else

                     other++;

i++;     

}

printf("alpha1=%d,alpha2=%d,digit=%d,space=%d,other=%d",alpha1,alpha2,digit,space,other);

return(0);

}

2.100道趣味题的4道;         

                            

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值