
几道C语言编程题
1编程序将一维数组中元素向右循环移N次。要求用下标法和指针法两种方法实现例如元素为0,1,2,3,4,5,6,7,8,9,10位移3次后变成8,9,10,0,1,2,3,...
1 编程序 将一维数组中元素向右循环移N次。要求用下标法和指针法两种方法实现
例如 元素为0,1,2,3,4,5,6,7,8,9,10位移3次后变成8,9,10,0,1,2,3,4,5,6,7。
2 用scanf()函数输入20个数存入一个数组中,以每行5个数打印输出,并打印输出其中偶数的和(用数组和指针两种方法)
3 有15个数存入一个数组,输入一个数,找出该数是数组中的元素的第几个元素的值。如果不存在,输出“无次数”。要求用赋值法的方法给定义的数组赋值,要找的数用scanf()函数输入。(用数组和指针两种方法)
4 设数组a共有11个元素,前10元素由小到大顺序排列,最后一个元素未赋值,现将任意数x插入数组a中,插入后数组仍然有序。要求用赋值法给定义的数组前10个元素赋值,要求插入的数用scanf()函数输入。(用数组和指针两种方法)
提示 把一个数插入到有序列中去的算法思想;
(1)首先确定x插在数组中的位置P;(可由以下语句实现)
p=0;
while(x>a[p]and p<n)
p=p+1;
(2) a[p]-a[n]元素向后顺移一个位置以空出啊(p)元素放入x。(可由以下语句实现)
for(i=n-2;i>=p-1;i--)
a[i+1]=a[i];
a[p]=x;
差不多都编出来了 可总是有几个地方错误 又不知道怎么改 高手帮忙编写下 借小弟参考参考 好的有追分
能给几道就几道吧 谢谢 展开
例如 元素为0,1,2,3,4,5,6,7,8,9,10位移3次后变成8,9,10,0,1,2,3,4,5,6,7。
2 用scanf()函数输入20个数存入一个数组中,以每行5个数打印输出,并打印输出其中偶数的和(用数组和指针两种方法)
3 有15个数存入一个数组,输入一个数,找出该数是数组中的元素的第几个元素的值。如果不存在,输出“无次数”。要求用赋值法的方法给定义的数组赋值,要找的数用scanf()函数输入。(用数组和指针两种方法)
4 设数组a共有11个元素,前10元素由小到大顺序排列,最后一个元素未赋值,现将任意数x插入数组a中,插入后数组仍然有序。要求用赋值法给定义的数组前10个元素赋值,要求插入的数用scanf()函数输入。(用数组和指针两种方法)
提示 把一个数插入到有序列中去的算法思想;
(1)首先确定x插在数组中的位置P;(可由以下语句实现)
p=0;
while(x>a[p]and p<n)
p=p+1;
(2) a[p]-a[n]元素向后顺移一个位置以空出啊(p)元素放入x。(可由以下语句实现)
for(i=n-2;i>=p-1;i--)
a[i+1]=a[i];
a[p]=x;
差不多都编出来了 可总是有几个地方错误 又不知道怎么改 高手帮忙编写下 借小弟参考参考 好的有追分
能给几道就几道吧 谢谢 展开
3个回答
推荐于2016-10-23
展开全部
多给些分吧,累死我了:(
给,都已经编译运行确认了:
1.
下标法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[11]={0,1,2,3,4,5,6,7,8,9,10};
int N;
int i,j,temp;
printf("Please input N: \n");
scanf("%d",&N);
for(i=0;i<N;i++)
{
temp=a[10];
for(j=10;j>=1;j--)
{
a[j]=a[j-1];
}
a[0]=temp;
}
printf("After Move: \n");
for(i=0;i<11;i++) printf("%d ",a[i]);
getch();
return 1;
}
指针法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[11]={0,1,2,3,4,5,6,7,8,9,10};
int N;
int i,j,temp;
printf("Please input N: \n");
scanf("%d",&N);
for(i=0;i<N;i++)
{
temp=*(a+10);
for(j=10;j>=1;j--)
{
*(a+j)=*(a+j-1);
}
*a=temp;
}
printf("After Move: \n");
for(i=0;i<11;i++) printf("%d ",*(a+i));
getch();
return 1;
}
2.
数组法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[20]={0};
int i,j,sum=0;
printf("请输入20个数: \n");
for(i=0;i<20;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",&a[i]);
}
printf("输入的数为: \n");
for(i=0;i<20;i++)
{
printf("%d ",a[i]);
if((i+1)%5==0) printf("\n");
}
for(i=0;i<20;i++)
if(a[i]%2==0) sum+=a[i];
printf("\n偶数的和为: %d",sum);
getch();
return 1;
}
指针法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[20]={0};
int i,j,sum=0;
printf("请输入20个数: \n");
for(i=0;i<20;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",a+i);
}
printf("输入的数为: \n");
for(i=0;i<20;i++)
{
printf("%d ",*(a+i));
if((i+1)%5==0) printf("\n");
}
for(i=0;i<20;i++)
if(*(a+i)%2==0) sum+=*(a+i);
printf("\n偶数的和为: %d",sum);
getch();
return 1;
}
3.
指针法:#include<conio.h>
#include<stdio.h>
int main()
{
int a[15]={0};
int i,num;
printf("请输入15个数: \n");
for(i=0;i<15;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",a+i);
}
printf("要找的数为: \n");
scanf("%d",&num);
for(i=0;i<15;i++)
if(*(a+i)==num)
{
printf("该数是数组中的元素的第%d个元素的值.\n",i+1);
break;
}
if(i==15)
printf("无此数.");
getch();
return 1;
}
数组法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[15]={0};
int i,num;
printf("请输入15个数: \n");
for(i=0;i<15;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",&a[i]);
}
printf("要找的数为: \n");
scanf("%d",&num);
for(i=0;i<15;i++)
if(a[i]==num)
{
printf("该数是数组中的元素的第%d个元素的值.\n",i+1);
break;
}
if(i==15)
printf("无此数.");
getch();
return 1;
}
4.
数组法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[11]={0};
int i,num;
int p=0;
printf("请输入10个数: \n");
for(i=0;i<10;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",&a[i]);
}
printf("要插入的数为: \n");
scanf("%d",&num);
while(num>a[p]&&p<10)
p=p+1;
for(i=9;i>=p-1;i--)
a[i+1]=a[i];
a[p]=num;
printf("Result: \n");
for(i=0;i<11;i++)
printf("%d ",a[i]);
getch();
return 1;
}
指针法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[11]={0};
int i,num;
int p=0;
printf("请输入10个数: \n");
for(i=0;i<10;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",a+i);
}
printf("要插入的数为: \n");
scanf("%d",&num);
while(num>*(a+p)&&p<10)
p=p+1;
for(i=9;i>=p-1;i--)
*(a+i+1)=*(a+i);
*(a+p)=num;
printf("Result: \n");
for(i=0;i<11;i++)
printf("%d ",*(a+i));
getch();
return 1;
}
给,都已经编译运行确认了:
1.
下标法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[11]={0,1,2,3,4,5,6,7,8,9,10};
int N;
int i,j,temp;
printf("Please input N: \n");
scanf("%d",&N);
for(i=0;i<N;i++)
{
temp=a[10];
for(j=10;j>=1;j--)
{
a[j]=a[j-1];
}
a[0]=temp;
}
printf("After Move: \n");
for(i=0;i<11;i++) printf("%d ",a[i]);
getch();
return 1;
}
指针法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[11]={0,1,2,3,4,5,6,7,8,9,10};
int N;
int i,j,temp;
printf("Please input N: \n");
scanf("%d",&N);
for(i=0;i<N;i++)
{
temp=*(a+10);
for(j=10;j>=1;j--)
{
*(a+j)=*(a+j-1);
}
*a=temp;
}
printf("After Move: \n");
for(i=0;i<11;i++) printf("%d ",*(a+i));
getch();
return 1;
}
2.
数组法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[20]={0};
int i,j,sum=0;
printf("请输入20个数: \n");
for(i=0;i<20;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",&a[i]);
}
printf("输入的数为: \n");
for(i=0;i<20;i++)
{
printf("%d ",a[i]);
if((i+1)%5==0) printf("\n");
}
for(i=0;i<20;i++)
if(a[i]%2==0) sum+=a[i];
printf("\n偶数的和为: %d",sum);
getch();
return 1;
}
指针法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[20]={0};
int i,j,sum=0;
printf("请输入20个数: \n");
for(i=0;i<20;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",a+i);
}
printf("输入的数为: \n");
for(i=0;i<20;i++)
{
printf("%d ",*(a+i));
if((i+1)%5==0) printf("\n");
}
for(i=0;i<20;i++)
if(*(a+i)%2==0) sum+=*(a+i);
printf("\n偶数的和为: %d",sum);
getch();
return 1;
}
3.
指针法:#include<conio.h>
#include<stdio.h>
int main()
{
int a[15]={0};
int i,num;
printf("请输入15个数: \n");
for(i=0;i<15;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",a+i);
}
printf("要找的数为: \n");
scanf("%d",&num);
for(i=0;i<15;i++)
if(*(a+i)==num)
{
printf("该数是数组中的元素的第%d个元素的值.\n",i+1);
break;
}
if(i==15)
printf("无此数.");
getch();
return 1;
}
数组法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[15]={0};
int i,num;
printf("请输入15个数: \n");
for(i=0;i<15;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",&a[i]);
}
printf("要找的数为: \n");
scanf("%d",&num);
for(i=0;i<15;i++)
if(a[i]==num)
{
printf("该数是数组中的元素的第%d个元素的值.\n",i+1);
break;
}
if(i==15)
printf("无此数.");
getch();
return 1;
}
4.
数组法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[11]={0};
int i,num;
int p=0;
printf("请输入10个数: \n");
for(i=0;i<10;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",&a[i]);
}
printf("要插入的数为: \n");
scanf("%d",&num);
while(num>a[p]&&p<10)
p=p+1;
for(i=9;i>=p-1;i--)
a[i+1]=a[i];
a[p]=num;
printf("Result: \n");
for(i=0;i<11;i++)
printf("%d ",a[i]);
getch();
return 1;
}
指针法:
#include<conio.h>
#include<stdio.h>
int main()
{
int a[11]={0};
int i,num;
int p=0;
printf("请输入10个数: \n");
for(i=0;i<10;i++)
{
printf("%d: ",i+1);
fflush(stdin);
scanf("%d",a+i);
}
printf("要插入的数为: \n");
scanf("%d",&num);
while(num>*(a+p)&&p<10)
p=p+1;
for(i=9;i>=p-1;i--)
*(a+i+1)=*(a+i);
*(a+p)=num;
printf("Result: \n");
for(i=0;i<11;i++)
printf("%d ",*(a+i));
getch();
return 1;
}
展开全部
1
提示:
大写和小写在阿斯可(忘记怎么拼写了)
相差32
你减一下
就出来了。。
2
提示:
用数组或者字符指针定义2个字符串,一个是原来的,一个是结果。循环查找,如果找到字母,那么替换,如果没有找到,保存不变,将结果赋值给第一个结果的数组。
3
提示:用数组或者字符指针定义2个字符串,一个是原来的,一个是结果。for循环取其前20个字符,并且赋值给结果字符串。
呵呵。。
代码不难哦,思路说了一下,自己写写看。
提示:
大写和小写在阿斯可(忘记怎么拼写了)
相差32
你减一下
就出来了。。
2
提示:
用数组或者字符指针定义2个字符串,一个是原来的,一个是结果。循环查找,如果找到字母,那么替换,如果没有找到,保存不变,将结果赋值给第一个结果的数组。
3
提示:用数组或者字符指针定义2个字符串,一个是原来的,一个是结果。for循环取其前20个字符,并且赋值给结果字符串。
呵呵。。
代码不难哦,思路说了一下,自己写写看。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
能把你编的程序给看看吗?大家好直接找错误,省得重编
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询