导航菜单
首页 >  » 正文

C语言程序设计:题1、从键盘上输入任意个整数,输入 1时结束,分别统计其中奇数和偶数个数. C语言编程,从键盘输入10个学生的成绩,由高到低排序输出成绩。

C语言程序设计:题1、从键盘上输入任意个整数,输入 1时结束,分别统计其中奇数和偶数个数.

第一个32313133353236313431303231363533e58685e5aeb931333332623337:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define  N  5
main()
{
int a[N];
int i,s1,s2;
s1=0;
s2=0;
printf("请输入%d个数,以-1结束: ",N);
for(i=0;i<N;i++)
{
scanf("%d",&a[i]);
if(a[i]%2==0)
s1+=1;
else
s2+=1;
}
printf("偶数个数为%d个 ",s1);
printf("奇数个数为%d个 ",s2-1);
} 两个题都只需要改变宏定义中的N就可以实现不同多个数据的输入了。答题不易,望采纳。有其他问题请采纳后,向我求助。
第二题:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define  N  5
main()
{
int a[N];
int i,max,t=0;
printf("请输入%d个数: ",N);
for(i=0;i<N;i++)
scanf("%d",&a[i]);
max=a[0];
for(i=0;i<N;i++)
if(a[i]>max)
{
max=a[i];
t=i;
}
printf("该数组最大数为:%d,其下标为:%d ",max,t);
}

C语言编程,从键盘输入10个学生的成绩,由高到低排序输出成绩。

//如果只有成绩信息就可以用下面的代码

//如果还需要加入学号,姓名之类的信息,可以用结构体然后对成绩排序即可

#include"stdio.h"

int main()

{

int  d[10]={0},i,j,t;//数组d存放10个学生的成绩

for(i=0;i<10;i++)//输入10个成绩(空格分开)

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

for(i=0;i<9;i++)//排序 for(j=i+1;j<10;j++) if(d[i]<d[j]) {

t=d[i],d[i]=d[j],d[j]=t;

}

for(i=0;i<10;i++)//输出10个成绩

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

getch();

return 0;

}

c语言程序设计课后习题答案赵山林

回答:小瞄3721学弟2月7日20:58教材(1)潭浩强的主编的《C语言程序设计》(第二版)2113高教出版社[(1)比(2)难些](2)赵5261山林高媛等编著《C程序4102设计》人民邮电出版社28.00元/本(3)《全国计算机等级考试二级教程---C语言程序设计》由教育部考试中心编著高等教育出版社25.80元/本网1653上有视频,你先登录分享互联网,它的网址是,后下载一个叫电螺的免费软件后,再到网页的左侧查找回计算机方面的资料,它里面资料较全(耐心点不难找到你想要的答!)揪错┆评论1┆举报

在C语言中,下列合法的字符常量是?

首先看定义,用单引号括起来的单个字符,或用双引号括起来的一串字符即字符常量。
c
&
是用单引号括起来的单个字符,正确。
a
xff
b
65
d28
是用单引号括起来的多个字符,但因它们前面都
有一个转义符
‘‘
,就不能说它们都不符合定义,都不合法的。
a
xff

x
组合表示是一个十六进制数
ffh

10
进制的
255
,它代表一个不可见字符的ascii
码,
合法

b
65
同理

+
三个十进制数
ddd
表示的是
八进制数。65

65

10
进制的
53,

‘f’
的ascii
码表示。单
字,合法。
d
28
同上表示是八进制数,但八进制数中逢八则进一,是不会出现
8
的,所以格式虽对但数值错了。不合法。

计算机二级考试C语言程序设计题有步骤分吗

二级考试C语言程序设计题没有步骤分,只有零分和满分。
扩展资料
全国计算机二级C语言考试,分为选择题(40分),程序填空题 (18分),程序修改题 (18分),程序设计题(24分)。
考试内容
一、C 语言程序的结构
1. 程序的构成,main 函数和其他函数。
2. 头文件,数据说明,函数的开始和结束标志以及程序中的注释。
3. 源程序的书写格式。
4. C 语言的风格。
二、数据类型及其运算
1.C 的数据类型(基本类型,构造类型,指针类型,无值类型)及其定义方法。
2. C 运算符的种类、运算优先级和结合性。
3. 不同类型数据间的转换与运算。
4. C 表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式)和求值规则。
三、基本语句
1. 表达式语句,空语句,复合语句。
2. 输入输出函数的调用,正确输入数据并正确设计输出格式。
四、选择结构程序设计
1. 用 if 语句实现选择结构。
2. 用 switch 语句实现多分支选择结构。
3. 选择结构的嵌套。
五、循环结构程序设计
1. for 循环结构。
2. while 和 do-while 循环结构。
3. continue 语句和 break 语句。
4. 循环的嵌套。
六、数组的定义和引用
1. 一维数组和二维数组的定义、初始化和数组元素的引用。
2. 字符串与字符数组。
七、函数
1. 库函数的正确调用。
2. 函数的定义方法。
3. 函数的类型和返回值。
4. 形式参数与实际参数,参数值的传递。
5. 函数的正确调用,嵌套调用,递归调用。
6. 局部变量和全局变量。
7. 变量的存储类别(自动,静态,寄存器,外部),变量的作用域和生存期。
八、编译预处理
1. 宏定义和调用(不带参数的宏,带参数的宏)。
2. “文件包含”处理。
九、指针
1. 地址与指针变量的概念,地址运算符与间址运算符。
2. 一维、二维数组和字符串的地址以及指向变量、数组、字符串、函数、结构体的指针变量的定义。通过指针引用以上各类型数据。
3. 用指针作函数参数。
4. 返回地址值的函数。
5. 指针数组,指向指针的指针。
十、结构体(即“结构”)与共同体(即“联合”)
1. 用 typedef 说明一个新类型。
2. 结构体和共用体类型数据的定义和成员的引用。
3. 通过结构体构成链表,单向链表的建立,结点数据的输出、删除与插入。
十一、位运算
1. 位运算符的含义和使用。
2. 简单的位运算。
十二、文件操作
只要求缓冲文件系统(即高级磁盘 I / O 系统),对非标准缓冲文件系统(即低级磁盘 I / O 系统)不要求。
1. 文件类型指针(FILE 类型指针)。
2. 文件的打开与关闭(fopen,fclose)。
3. 文件的读写(fputc,fgetc,fputs,fgets,fread,fwrite,fprintf,fscanf 函数的应用),文件的定位(rewind,fseek 函数的应用)。

C语言程序设计:分解素因子

首先写一个求素数的函数:
f(x)
{int i;
for(i=2;iif(x%i==0)return 0; return 1; } main() {int a[10],k,i,j; scanf("%d",&K); printf(" "); for(i=0;i scanf("%d",&a[i]); for(i=0;i {for(j=2;j if(a[i]%j==0 && f(j)==1) printf("%d *",j); printf(" "); } } 百度很垃圾,程序中有些地方打了空格,但是发表出来就没有空格了,由于格式问题,所以你看起来比较吃力

关于谭浩强编辑的《C程序设计试题汇编》中的一道题

楼主,书上也有错。

其实这道题b和c都可以得出你想要的结果。

书上的例题其实缩小了点范围

如果让我写,我会写为:

for(x=1;x<10;x++)
for(y=0;y<10;y++)
for(z=0;z<10;z++)

C语言程序设计题:职工工资管理系统

你要的是命令行还是图形界面?
如果是命令行可以考虑下
如果是图形界面的话200分少了点,看看吧.
--------------------------------------------
既然不是图形界面,代码就简单.不过也有近300行.可能有些地方不怎么简洁..
你用的时候,把注释"delete this line"那行所在的代码删除或修改就OK了.
如果看不懂请给我留言,我发一份带详细注释的代码给你.
--------------------------------------------
/*
Microsoft Visual C++ .NET编译通过
by 做他@07.12.29
*/
#include "stdafx.h"
#include "iostream"
#include "string"
#include "list"
#include "cassert"
using namespace std;
/*
编号、姓名、部门、应付工资、保险、税金、实付工资。
其中实付工资由公式计算得到:实付工资=应付工资 - 保险- 税金
*/
struct employee{
string m_num;//编号
string m_name;//姓名
string m_dep;//部门
double m_salary;//应付工资
double m_insurance;//保险
double m_tax;//税金
};
/*
(1)录入:输入职工数据,其中“实付工资”通过计算得到;
(2)删除:删除指定的职工信息(输入姓名,若找到则删除该信息)
(3) 修改:允许对已经录入的数据重新进行编辑、修改;
(4) 显示:显示全体职工数据;
(5)查询:
a. 输入职工姓名,显示该职工的全部数据;
b. 输入某部门值,显示该部门职工的数据、工资总额、平均工资。
(6) 退出程序。
*/
list<employee> emps;
int _tmain(int argc, _TCHAR* argv[])
{
void print(const employee &e);
void input();
void del();
void mod();
void show_all();
void show_name();
void show_dep();
cout<<"简易职工薪水管理程序 by 做他 ";// delete this line
cout<<"版权没有 请随意复制或修改任何代码 ";//delete this line
cout<<"请选择操作:1.录入 2.删除 3.修改 4.查询 5.显示所有员工 6.退出 :";
int choose=0;
cin>>choose;
assert(!cin.fail());
while (choose!=6)
{
if (choose==1) input();
if (choose==2) del();
if (choose==3) mod();
if (choose==4)
{
int choice=0;
cout<<"请选择操作 1.按姓名查询 2.按部门查询 3.退出:";
cin>>choice;
if (choice==1) show_name();
if (choice==2) show_dep();
if (choice==3)
{
cout<<"请选择操作:1.录入 2.删除 3.修改 4.查询 5.显示所有员工 6.退出 :";
cin>>choose;
assert(!cin.fail());
continue;
}
}
if (choose==5) show_all();
cout<<"请选择操作:1.录入 2.删除 3.修改 4.查询 5.显示所有员工 6.退出 :";
cin>>choose;
assert(!cin.fail());
}
return 0;
}
void print(const employee &e)
{
cout<<"编号:"<<e.m_num<<endl;
cout<<"姓名:"<<e.m_name<<endl;
cout<<"部门:"<<e.m_dep<<endl;
cout<<"保险:"<<e.m_insurance<<endl;
cout<<"税金:"<<e.m_tax<<endl;
cout<<"应付工资:"<<e.m_salary<<endl;
cout<<"实付工资:"<<e.m_salary-e.m_insurance-e.m_tax<<endl;
}
void input()
{
string num,name,dep;
double salary,ins,tax;
cout<<"请输入员工编号:";
cin>>num;
cout<<"请输入员工姓名:";
cin>>name;
cout<<"请输入员工部门:";
cin>>dep;
cout<<"请输入员工保险:";
cin>>ins;
assert(!cin.fail());
cout<<"请输入员工税金:";
cin>>tax;
assert(!cin.fail());
cout<<"请输入员工应付工资:";
cin>>salary;
assert(!cin.fail());
employee temp;
temp.m_dep=dep;
temp.m_insurance=ins;
temp.m_name=name;
temp.m_num=num;
temp.m_salary=salary;
temp.m_tax=tax;
emps.push_back(temp);
cout<<"员工录入操作完毕. ";
}
void del()
{
if (emps.size()==0)
{
cout<<"没有员工记录. ";
return;
}
string name;
bool isfind=false;
cout<<"请输入要删除的员工姓名:";
cin>>name;
list<employee>::iterator iter;
for (iter=emps.begin();iter!=emps.end();iter++)
{
if (iter->m_name==name)
{
isfind=true;
emps.erase(iter);
cout<<"姓名为""<<name<<""的员工记录已删除. ";
return;
}
}
if (!isfind)
{
cout<<"没有找到姓名为""<<name<<""的员工. ";
return;
}
}
void mod()
{
if (emps.size()==0)
{
cout<<"员工记录为空. ";
return;
}
bool isfind=false;
string name;
cout<<"请输入要修改的员工姓名:";
cin>>name;
list<employee>::iterator iter;
for (iter=emps.begin();iter!=emps.end();iter++)
{
if (iter->m_name==name)
{
isfind=true;
cout<<"姓名为""<<name<<""的员工记录已找到. ";
break;
}
}
if (isfind)
{
string num,name,dep;
double tax,ins,salary;
print(*iter);
cout<<endl;
cout<<"请输入新的员工编号:";
cin>>num;
cout<<"请输入新的员工姓名:";
cin>>name;
cout<<"请输入新的员工部门:";
cin>>dep;
cout<<"请输入新的员工保险:";
cin>>ins;
assert(!cin.fail());
cout<<"请输入新的员工税金:";
cin>>tax;
assert(!cin.fail());
cout<<"请输入新的员工工资:";
cin>>salary;
assert(!cin.fail());
iter->m_dep=dep;
iter->m_insurance=ins;
iter->m_name=name;
iter->m_num=num;
iter->m_salary=salary;
iter->m_tax=tax;
cout<<"1 员工记录被成功修改. ";
}
else
{
cout<<"没有找到姓名为""<<name<<""的员工记录. ";
}
}
void show_all()
{
if (emps.size()==0)
{
cout<<"员工记录为空. ";
return;
}
cout<<"显示全体员工数据: ";
cout<<"-------------------- ";
list<employee>::iterator iter;
for(iter=emps.begin();iter!=emps.end();iter++)
{
cout<<endl;
print(*iter);
cout<<endl;
}
cout<<"-------------------- ";
}
void show_name()
{
if (emps.size()==0)
{
cout<<"员工记录为空. ";
return;
}
bool isfind=false;
string name;
cout<<"请输入要查询的员工姓名:";
cin>>name;
list<employee>::iterator iter;
for(iter=emps.begin();iter!=emps.end();iter++)
{
if (iter->m_name==name)
{
isfind=true;
cout<<"姓名为""<<name<<""的员工记录已找到. ";
print(*iter);
break;
}
}
if (!isfind)
{
cout<<"没有找到姓名为""<<name<<""的员工. ";
return;
}
}
void show_dep()
{
if (emps.size()==0)
{
cout<<"员工记录为空. ";
return;
}
double isfind=0.00;
double total_salary=0.00;
string dep;
cout<<"请输入要查询的部门名称:";
cin>>dep;
cout<<"部门["<<dep<<"]的员工信息: ";
cout<<"-------------------- ";
list<employee>::iterator iter;
for(iter=emps.begin();iter!=emps.end();iter++)
{
if (iter->m_dep==dep)
{
isfind++;
total_salary+=iter->m_salary;
print(*iter);
cout<<endl;
continue;
}
}
cout<<"-------------------- ";
if (isfind==0)
{
cout<<"没有找到名称为["<<dep<<"]的部门. ";
}
else
{
cout<<"部门["<<dep<<"]工资统计: ";
cout<<"工资总额:"<<total_salary<<endl;
cout<<"平均工资:"<<total_salary/isfind<<endl;
}
}

c语言程序设计教程课后答案 黄建灯

展开全部

您好,这本书是由本校的老师进行编撰的教程,您可以向本校的学长学姐或者老师索要课后答案

c语言程序设计题:函数的功能是查找x在s所指数组中下标的位置作为函数值返回,若x不存在,则返回 1

#include /* p : 数组指针 len : 数组长度 num : 要查找的数据 */ int Search(int *p, int len, int num) { for (int i = 0; i < len; i++) { if (p[i] == num) { return(i+1); } } return(-1); } void main() { int s[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 }; int x; scanf("%d", &x); printf("%d ", Search(s, 10, x)); }