c數組編程題
#include<stdio.h>
void inputa(int a[],int n){
for(int i=0;i<n;i++){
scanf("%d",&a[i]);
}
}
void merge(int a[],int b[],int n,int m,int c[]){
int i=0,j=0,k=0;
while(i<n&&j<m ){
if(a[i]<b[j])c[k++]=a[i++];
else c[k++]=b[j++];
}
while(i<n){
c[k++]=a[i++];
}
while(j<m ){
c[k++]=b[j++];
}
}
void outa(int a[],int n){
for(int i=0;i<n;i++)
printf("%d ",a[i]);
}
int main(){
int n=6,m=4;
int a[6],b[4],c[10];
inputa(a,n);
inputa(b,m);
merge(a,b,n,m,c) ;
outa(c,n+m);
}
B. c語言數組編程題
#include<stdio.h>
int sum(int *a,int *b)
{
for(int i=6,j=0;i<10;j++,i++)
a[i]=b[j];
}
int main()
{
int a[11],b[5];
for(int i=0;i<6;i++)
scanf("%d",&a[i]);
for(int i=0;i<4;i++)
scanf("%d",&b[i]);
sum(a,b);
for(int i=0;i<10;i++)//將合並後的數組排序
for(int j=0;j<9-i;j++)
if(a[j]>a[j+1])
{
int t;
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
for(int i=0;i<10;i++)
printf("%d ",a[i]);
return 0;
}
C. C語言編程題:定義一個數組,然後利用循環為數組輸入10個整數,然後再將數組輸出,請問該怎麼做
#include<stdio.h>
int main(){
int a[10]={},i,sum=0;
printf("請輸入10個整數: ");
for(i=0;i<10;i++){
scanf("%d",&a[i]);
sum+=a[i];
}
printf("10個元素和為:%d",sum);
return 0;
}
(3)c數組編程題擴展閱讀:
一個數組中的所有元素具有相同的數據類型(在C、C++、Java、pascal中都這樣。但也並非所有涉及數組的地方都這樣,比如在Visual Foxpro中的數組就並沒這樣的要求)。當然,當數據類型為 Variant 時,各個元素能夠包含不同種類的數據(對象、字元串、數值等等)。可以聲明任何基本數據類型的數組,包括用戶自定義類型和對象變數。
D. c語言數組編程題
思路:按題意,用指針遍歷字元串st,使用標識念豎變數flag首次遇到字母置1並計數,遇到空格時flag重置0。
注意:本程序不考慮夾雜非字母的情況,請規范輸入。比如「I am a stu**dent」,stu**dent將作為一個單詞識別。
下面是代碼:
#include <stdio.h>
int GetWordNum(char st[])
{
char *p=st;
int cnt=0,flag=0;
while(*p)
{
if(flag==0 && ((*p>='a' && *p<='z') || (*p>='A' &&碧差 *p<='Z')))
cnt++,flag=1;
if(flag &&仔慧大 *p==' ')
flag=0;
p++;
}
return cnt;
}
int main()
{
char str[]="I am a student";
printf("%s共計單詞個數%d ",str,GetWordNum(str));
return 0;
}
E. C語言數組程序題。。。
intmain(){
intnum1[20],num2[20],num3[20],num4[20];
inti,j,j1=0,j2=0,k1=0,k2=0,tmp,flag=0;
chara=0;
while(a!=' '){
scanf("%d",&num1[j1++]);
a=getchar();
}
a=0;
while(a!=' '){
scanf("%d",&num2[j2++]);
a=getchar();
}
for(i=0;i<j1;i++){
for(j=0;j<j2;j++){
if(num1[i]==num2[j]){
flag=1;
}
}
if(flag){
num3[k1++]=num1[i];
}else{
num4[k2++]=num1[i];
}
flag=0;
}
for(i=0;i<j2;i++){
for(j=0;j<j1;j++){
if(num2[i]==num1[j]){
flag=1;
}
}
if(!flag){
num4[k2++]=num2[i];
}
flag=0;
}
for(i=0;i<(k2-1);i++){
for(j=i+1;j<k2;j++){
if(num4[i]>num4[j]){
tmp=num4[i];
num4[i]=num4[j];
num4[j]=tmp;
}
}
}
for(i=0;i<k2;i++){
printf("%d",num4[i]);
}
printf(" ");
for(i=0;i<(k1-1);i++){
for(j=i+1;j<k1;j++){
if(num3[i]>num3[j]){
tmp=num3[i];
num3[i]=num3[j];
num3[j]=tmp;
}
}
}
for(i=0;i<k1;i++){
printf("%d",num3[i]);
}
return0;
}
F. C語言字元數組編程題
思路:按題意,用指針遍歷字元串st,使用標識變數flag首次遇到字母置1並計數,遇到空格時flag重置0。
注意:本程序不考慮夾雜非字母的情況,請規范輸入。比如「I am a stu**dent」,stu**dent將作為一個單詞識別。
下面是代碼:
#include <stdio.h>
int GetWordNum(char st[])
{
char *p=st;
int cnt=0,flag=0;
while(*p)
{
if(flag==0 && ((*p>='a' && *p<='z') || (*p>='A' && *p<='Z')))
cnt++,flag=1;
if(flag && *p==' ')
flag=0;
p++;
}
return cnt;
}
int main()
{
char str[]="I am a student";
printf("%s共計單詞個數%d ",str,GetWordNum(str));
return 0;
}