1:打印楊輝三角
91 int arr[6][6];92 int i,j=0;93 for(i=0;i<6;i++)94 {95 for(j=0;j<=i;j++) 96 {97 if(j==0||i==j)98 {99 arr[i][j]=1;
100 }
101 else
102 arr[i][j]=arr[i-1][j]+arr[i-1][j-1];
103 printf("%-4d",arr[i][j]);
104
105 }
106 putchar(10);
107 }
108 return 0;
109 }
運行結果:
2:定義數組并初始化,輸出數組中任意兩個數的最大差值,以及最大和(不允許使用排序)
int arr[]={12,3,4,23,56,3,6};
最大差: 56-3=53
最大和:56+23=79
113 int arr[]={12,3,4,23,56,3,6};
114 int i,j=0;
115 int max=arr[0];
116 int min=arr[0];
117 int max_he=0;
118 int max_cha=0;
119 for(i=0;i<7;i++)
120 {
121 if(max<arr[i])
122 {
123 max=arr[i];
124 }
125 if(min>arr[i])
126 {
127 min=arr[i];
128 }
129 }
130 int max2=0;
131 for(i=0;i<7;i++)
132 {
133 if(max2<arr[i]&&arr[i]!=max)
134 {
135 max2=arr[i];
136 }
137 }
138 printf("max_he=%d max_cha=%d\n",max+max2,max-min);
運行結果:
3: 定義數組并初始化,現有一個flag,如果flag是1,則默認使用冒泡實現升序排序
?如果flag是0,則默認使用簡單選擇實現降序排序
?int arr[]={12,3,4,23,56,3,6};
144 int arr[]={12,3,4,23,56,3,6};
145 int flag;
146 printf("請輸入flag的數值:");
147 scanf("%d",&flag);
148 if(flag==1)
149 {
150 int i,j,temp=0;
151 for(i=1;i<7;i++)
152 {
153 for(j=0;j<7-i;j++)
154 {
155 if(arr[j]>arr[j+1])
156 {
157 temp=arr[j];
158 arr[j]=arr[j+1];
159 arr[j+1]=temp;
160 }
161 }
162 }
163 for(i=0;i<7;i++)
164 {
165 printf("%d ",arr[i]);
166 }
167 }
168
169 else if(flag==0)
170 { int i,j=0;
171 int temp2=0;
172 for(i=0;i<7-1;i++)
173 {
174 int min=i;
175 for(j=i+1;j<7-1;j++)
176 {
177 if(arr[min]<arr[j])
178 {
179 min=j;
180 }
181 }
182 if(min!=i)
183 {
184 temp2=arr[min];
185 arr[min]=arr[i];
186 arr[i]=temp2;
187
188 }
189 }
190 for(i=0;i<7;i++)
191 {
192 printf("%d ",arr[i]);
193 }
194 }
運行結果:
3.定義數組存儲n個整數,現有key,輸入,查找數組中是否在key
如果出現一次,請輸出對應的位置
如果出現0次,則提示不存在
如果出現多次,則提示出現的次數
4.定義二維數組并初始化,請輸出二維數組每一行的和,以及輸出每一列的和
int arr[2][3]={
12,11,0 行和:23
2,3,4} 行和:9
列和 14 14 4
流程圖: