
跪求三道编程题!!!!都是《标准c语言基础教程》第四版里面的题~~求求各位高手了!期末考试用
~~1、使用简答题3中定义的结构编写一个c语言程序,接受来自一个用户的数字形式的月份,显示这个月份的名称和这个月份的天数。于是,在响应一个3的输入中,这个程序显示“Mar...
~~
1、使用简答题3中定义的结构编写一个c语言程序,接受来自一个用户的数字形式的月份,显示这个月份的名称和这个月份的天数。于是,在响应一个3的输入中,这个程序显示“March has 31days”(三月份有31天)。
答题3中定义的结构:struct monthdays
{
cha name[10];
int days;
}
2、a.编写一个名为coutlets()的函数,返回一个输入的字符串的字母数。数字、空格、标点符号、制表符和换行符不应该包含在返回的计数内。
b.编写一个简单的main()函数,测试练习7a中编写的countlets()函数。
3、a.一位教授构造了一个35行4列的二维双精度型数组。这个数组目前包含4个班学生的数值分数。编写一个c语言程序,确定小于60分范围中的分数的总个数、大于等于60且小于70分的总个数、大于等于70且小于80分的总个数、大于等于80且小于90分的总个数及大于等于90分的总个数。
b.你为练习a编写的函数应该如何修改成包括没有分数存在的情况?即,什么分数能够用于只是一个无效的分数?你的函数应该如何修改才能将计算这样的分数的情况排除在外?
谢谢大家了!!!!!!!跪谢!!!!!!这些都是基础的题……不要太深奥的编程 展开
1、使用简答题3中定义的结构编写一个c语言程序,接受来自一个用户的数字形式的月份,显示这个月份的名称和这个月份的天数。于是,在响应一个3的输入中,这个程序显示“March has 31days”(三月份有31天)。
答题3中定义的结构:struct monthdays
{
cha name[10];
int days;
}
2、a.编写一个名为coutlets()的函数,返回一个输入的字符串的字母数。数字、空格、标点符号、制表符和换行符不应该包含在返回的计数内。
b.编写一个简单的main()函数,测试练习7a中编写的countlets()函数。
3、a.一位教授构造了一个35行4列的二维双精度型数组。这个数组目前包含4个班学生的数值分数。编写一个c语言程序,确定小于60分范围中的分数的总个数、大于等于60且小于70分的总个数、大于等于70且小于80分的总个数、大于等于80且小于90分的总个数及大于等于90分的总个数。
b.你为练习a编写的函数应该如何修改成包括没有分数存在的情况?即,什么分数能够用于只是一个无效的分数?你的函数应该如何修改才能将计算这样的分数的情况排除在外?
谢谢大家了!!!!!!!跪谢!!!!!!这些都是基础的题……不要太深奥的编程 展开
1个回答
2009-12-27
展开全部
1.
//---------------------------------------------------------------------------
#include <stdio.h>
struct monthdays
{
char name[10];
int days;
} ;
int main(void)
{
struct monthdays mons[12]={{"January",31},{"Febrary",28},{"March",31},{"April",30},{"May",31},
{"June",30},{"July",31},{"August",31},{"September",30},{"October",31},
{"November",30},{"December",31}
} ;
int mon;
scanf("%d",&mon);
printf("%s has %d days",mons[mon-1].name,mons[mon-1].days);
return 0;
}
//---------------------------------------------------------------------------
2.
//---------------------------------------------------------------------------
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int countlets(const char *str)
{
int i,s=0;
for (i = 0; str[i]; i++) {
if (isalpha(str[i])) {
++s;
}
}
return s;
}
int main(void)
{
char ss[]="1230*/-abccdfgert";
printf("%d",countlets(ss));
return 0;
}
//---------------------------------------------------------------------------
3.
a.
//---------------------------------------------------------------------------
void ct(double s[35][4],int *u6,int *b67,int *b78,int *b89,int *m9)
{
int i,j;
*u6=*b67=*b78=*b89=*m9=0;
for (i = 0; i<35; i++) {
for (j=0; j<4; j++) {
if (s[i][j]<60) {
(*u6)++;
}
else if (s[i][j]<70) {
(*b67)++;
}
else if (s[i][j]<=80) {
(*b78)++;
}
else if (s[i][j]<=90) {
(*b89)++;
}
else (*m9)++;
}
}
}
//---------------------------------------------------------------------------
b.
可以用负数表示是一个无效的分数:
//---------------------------------------------------------------------------
void ct(double s[35][4],int *u6,int *b67,int *b78,int *b89,int *m9)
{
int i,j;
*u6=*b67=*b78=*b89=*m9=0;
for (i = 0; i<35; i++) {
for (j=0; j<4; j++) {
if (s[i][j]>=0&&s[i][j]<60) {
(*u6)++;
}
else if (s[i][j]<70) {
(*b67)++;
}
else if (s[i][j]<=80) {
(*b78)++;
}
else if (s[i][j]<=90) {
(*b89)++;
}
else (*m9)++;
}
}
}
//---------------------------------------------------------------------------
2.
//---------------------------------------------------------------------------
#include <stdio.h>
struct monthdays
{
char name[10];
int days;
} ;
int main(void)
{
struct monthdays mons[12]={{"January",31},{"Febrary",28},{"March",31},{"April",30},{"May",31},
{"June",30},{"July",31},{"August",31},{"September",30},{"October",31},
{"November",30},{"December",31}
} ;
int mon;
scanf("%d",&mon);
printf("%s has %d days",mons[mon-1].name,mons[mon-1].days);
return 0;
}
//---------------------------------------------------------------------------
2.
//---------------------------------------------------------------------------
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int countlets(const char *str)
{
int i,s=0;
for (i = 0; str[i]; i++) {
if (isalpha(str[i])) {
++s;
}
}
return s;
}
int main(void)
{
char ss[]="1230*/-abccdfgert";
printf("%d",countlets(ss));
return 0;
}
//---------------------------------------------------------------------------
3.
a.
//---------------------------------------------------------------------------
void ct(double s[35][4],int *u6,int *b67,int *b78,int *b89,int *m9)
{
int i,j;
*u6=*b67=*b78=*b89=*m9=0;
for (i = 0; i<35; i++) {
for (j=0; j<4; j++) {
if (s[i][j]<60) {
(*u6)++;
}
else if (s[i][j]<70) {
(*b67)++;
}
else if (s[i][j]<=80) {
(*b78)++;
}
else if (s[i][j]<=90) {
(*b89)++;
}
else (*m9)++;
}
}
}
//---------------------------------------------------------------------------
b.
可以用负数表示是一个无效的分数:
//---------------------------------------------------------------------------
void ct(double s[35][4],int *u6,int *b67,int *b78,int *b89,int *m9)
{
int i,j;
*u6=*b67=*b78=*b89=*m9=0;
for (i = 0; i<35; i++) {
for (j=0; j<4; j++) {
if (s[i][j]>=0&&s[i][j]<60) {
(*u6)++;
}
else if (s[i][j]<70) {
(*b67)++;
}
else if (s[i][j]<=80) {
(*b78)++;
}
else if (s[i][j]<=90) {
(*b89)++;
}
else (*m9)++;
}
}
}
//---------------------------------------------------------------------------
2.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询