1. 首页 > 科技

C语言关于数组的问题? c语言数组遇到的问题

C语言关于数组的问题?c语言数组遇到的问题

关于C语言数组的问题

#include "stdio.h"

#define NUM 10 ---------这里NUM的理解是下面碰到的NUM这个字符都表示整数10,所以下面data[NUM]可以理解为data[10],依此推.

main()

{ int data[NUM];

int i,j,temp;

~~~~~~~~~~~~~~~~~~~~~~~~

冒泡法排序

for(i=0; i<NUM-1; i++)

for(j=NUM-1; j>i; j--)

if(data[j]<data[j-1]) -----这里三句的意思是从数组最后开始进行比较,而数组的大小为10,但数组的下标是从0开始的,所以数组最后一个元素为NUM - 1 = 10-1 = 9,即DATA[9]是最后一个元素.

{temp=data[j];

data[j]=data[j-1];

data[j-1]=temp;

};

程序第二句#define NUM 10 和int data[NUM]已经定义数组长度为10,故输入的是10个整数,但是,这里没有scanf()函数,也没有为数组初始化,所以,date的十个元素date[0]date[1]date[2]……date[9]的值未知,

这样说清楚吗?

C语言数组问题

第一:

#include <stdio.h>

void main()

{

int a[10]={1,2,3,4,5,6,7,8,9,10};

int n,i;

printf("请输入要查找的数:");

scanf("%d",&n);

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

if(n==a[i])

{

printf("%d\n",i+1);

break;

}

if(i==10)

printf("数组中不存在这样的值\n");

}

第二题:

#include <stdio.h>

void main()

{

int a[300];

int i,j=0;

for(i=100;i<=300;i++)

if((i/100)*(i/10%10)*(i%10)==42 || (i/100)+(i/10%10)+(i%10)==12)

{

a[j]=i;

j++;

}

printf("%d \n",j);

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

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

}

C语言代码.数组问题

#include

int main()

{

    int a[100];// 所有学生成绩数组

    int b[100];//不及格成绩数组

    int n,i,j,t;

    int count=0;

    int lowscore=0;//不及格人数

    while(scanf("%d",&n)&&n>0)

    {

        a[count] = n;

        count++;

    }

    int max=a[0],min=a[0];

    for(i=0;i

    {

        if(max

            max = a[i];  // 获取最高分

        if(min>a[i])

            min = a[i];   // 获取最低分

        if(a[i]<60)

        {

            b[lowscore]=a[i];

            lowscore++;

        }

    }

    printf("不及格人数为:%d\n",lowscore);

    int k;

    printf("不及格成绩为:\n");

    for(k=0;k

    {

        printf("%d ",b[k]);

    }

    printf("\n");

    printf("最高分为:%d,最低分为:%d\n",max,min);

    for(i=0;i

    {

        for(j=i;j

        {

            if(a[i]

            {

                t = a[i];

                a[i] = a[j];

                a[j] = t;

            }

        }

    }

    printf("分数从高到低排序为:\n");

    for(i=0;i

    {

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

    }

    printf("\n");

    return 0;

}随便写的。。自己参考吧。

c语言关于数组方面的问题

(1)#include&lt;iostream&gt;

using namespace std;

int main(void)

{

int a[10],min,temp;

cout&lt;&lt;"输入10个整数"&lt;&lt;endl;

for(int i=0;i&lt;10;++i)

cin&gt;&gt;a[i];

for(i=0;i&lt;10;++i)

for(int j=1;j&lt;10;++j)

if(a[j]&lt;a[i]){min=j;}

temp=a[min];a[min]=a[0];a[0]=temp;

for(i=0;i&lt;10;++i)

cout&lt;&lt;a[i];

cout&lt;&lt;endl;

return 0;

}

(2)#include&lt;iostream&gt;

#include&lt;string&gt;

using namespace std;

int main(void)

{

char str[100];

cout&lt;&lt;"输入一段字符"&lt;&lt;endl;

cin&gt;&gt;str;

int len=strlen(str);

for(int i=1;i&lt;len-2;i=i+2)

if(str[i]&gt;='a'&amp;&amp;str[i]&lt;='z')str[i]=str[i]-32;

cout&lt;&lt;str&lt;&lt;endl;

return 0;

}