购美元汇率:高分求200行的c程序源代码!!

来源:百度文库 编辑:高校问答 时间:2024/05/07 18:34:56
帮朋友交作业。。。还请高手们来帮帮小女!~

不求多么复杂,只要是200行左右的,简单的,注释比较多的c程序就ok阿

多多益善阿~多谢大家阿~:)
晕!下面的2,3,4楼的! 你们把我当白痴么

拜托抄别人答案这是很光彩的事?

只需要简单的!最初级水平的c程序阿 就跟教学性质的c程序就可以!不过就是注释要稍微多一下:)

qingbuyaochaoxi

熟悉Excel 2000/2002的用户都知道,当输入的数字超过11位后,Excel会智能地将它转换成指数形式的科学计数法,有的时候(如在输入身份证号码、手机号码时)并不需要这一自动转换功能,只要在输入数字时在前面加上一个单撇号',这样就可以输入任意长的数字了。

但是,如果在已有的Excel文档(或是用一些档案管理系统生成的Excel文档)中存在上千条用指数形式的科学计数法表示的记录(这种记录以身份证号码居多),难道我们不厌其烦地在一条一条的记录前面加单撇号"'"吗?是不是有其他更好的办法呢?利用Excel中提供的VBA(Visual Basic for Application)编程功能,我们可以很容易地解决这个问题。

1、在Excel 2000/2002中输入Visual Basic程序。打开Excel 2000/2002,选择"工具→宏→Visual Basic编辑器"选项,进入Visual Basic编辑器,输入如下的代码(图1):

图 1

Sub CorrectionDigital??
Dim i? j As Integer
Dim Row? Col As Integer
Row = Selection.Rows.Count '选中的行数
Col = Selection.Columns.Count '选中的列数
For i = 1 To Col
For j = 1 To Row
ActiveCell.Formula = 〃'〃 + ActiveCell.Formula '转换一个单元格
ActiveCell.Offset?1? 0?.Select '单元格下移一个位置
Next j
ActiveCell.Offset?-Row? 1?.Select '本列已经转换完成,转到下一列
Next i
ActiveCell.Offset?0? -Col?.Select '回到起始位置
End Sub

2、在工具栏添加自定义按钮。关闭Visual Basic编辑器,回到Excel,选择"工具→自定义"命令,单击自定义对话框的"命令"选项,选择"宏",将"自定义按钮"拖到Excel的工具栏,如图2所示。

图 2

在Excel 中,有时需要统计表中相同数据出现的次数,如果对Excel 的函数运用不熟悉,我们可以巧妙地通过“查找与替换”来实现数据的简单统计。

如需统计人员花名册中性别为“男”的人数,可选中性别所在列,点击“编辑”菜单下的“替换”项。在“查找内容”中填写“男”,“替换为”中填上“A”,选择“全部替换”,此时Excel会弹出菜单提示“完成了X处被替换”,这个X即为统计出的男性人数。

再选择“编辑”菜单下“撤消”功能,使原单元格数据恢复。

另附陈秀峰的补充如下:

1、此法对于Excel2000及以前的版本无效(没有替换完成的提示框出现)。

2、如果将文中的“A”换成“男”,即在“替换为”中仍然填上“男”,则免去后面的“撤销”操作,效果更妙。

3、此法可以移植到Word等其他Office系列软件中。

随便给一个C程序是很容易的,只是未必是你要的。
需要代码起码得有一个要求,需要实现什么样的功能,大家才好给你定制啊。

main()

#include
//三天打鱼两天晒网.c

/*输入2003年后的年月日,判断这天是该打鱼还是该晒网!*/

void main()
{
int day,month,year;
int i,sumday,leap,sumtmp,ret;
sumday = 0;
printf("请输入2003年后的年份\n");
scanf("%d",&year);
while(year < 2003)
{
printf("输入的年份错误,请重新输入2003年后的年份\n");
scanf("%d",&year);
}
printf("请输入月份\n");
scanf("%d",&month);
while(month < 1||month >12)
{
printf("输入的月份错误!请重新输入月份\n");
scanf("%d",&month);
}
printf("请输入日期\n");
scanf("%d",&day);
while( Day(year,month,day) == -1)
{
printf("输入的日期错误!请重新输入日期\n");
scanf("%d",&day);
}

for(i = 2003; i < year; i++)
{
leap = Year(i);
if(leap == 1) { sumday += 1; }
}
sumtmp = Month(year,month,day);
sumday += sumtmp;
ret = sumday%5;
if(ret >= 1 && ret <= 3)
{
printf("这天该打鱼!\n");
}
else
{
printf("这天该晒网!\n");
}
return 0;
}

/*判断该天是该年的第几天*/
int Month(int year,int month,int day)
{
int sum;
int leap;
switch(month)/*先计算某月以前月份的总天数*/
{
case 1:sum=0;break;
case 2:sum=31;break;
case 3:sum=59;break;
case 4:sum=90;break;
case 5:sum=120;break;
case 6:sum=151;break;
case 7:sum=181;break;
case 8:sum=212;break;
case 9:sum=243;break;
case 10:sum=273;break;
case 11:sum=304;break;
case 12:sum=334;break;
default:printf("data error");break;
}
sum = sum + day;
leap = Year(year);
if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/
sum++;
return sum;
}

/*判断该年是否是闰年*/
int Year(int year)
{
int leap;
if(year%400==0||(year%4==0&&year%100!=0))
leap = 1;/*是闰年*/
else
leap = 0;
return leap;
}

/*判断输入日期是否合法*/
int Day(int year,int month,int day)
{
int flag = 0;
if(day < 1){
flag = -1;
return flag;
}
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
if(day > 31)
flag = -1;
break;
case 4:
case 6:
case 9:
case 11:
if(day > 30)
flag = -1;
break;
case 2:
if( Year(year) && day > 29 ) flag = -1;
else if( (Year(year) == 0 )&& day > 28 ) flag = -1;
break;
}
return flag;
}
回答者:hulihua007 - 助理 三级 12-11 11:50

--------------------------------------------------------------------------------

main()

#include
//三天打鱼两天晒网.c

/*输入2003年后的年月日,判断这天是该打鱼还是该晒网!*/

void main()
{
int day,month,year;
int i,sumday,leap,sumtmp,ret;
sumday = 0;
printf("请输入2003年后的年份\n");
scanf("%d",&year);
while(year < 2003)
{
printf("输入的年份错误,请重新输入2003年后的年份\n");
scanf("%d",&year);
}
printf("请输入月份\n");
scanf("%d",&month);
while(month < 1||month >12)
{
printf("输入的月份错误!请重新输入月份\n");
scanf("%d",&month);
}
printf("请输入日期\n");
scanf("%d",&day);
while( Day(year,month,day) == -1)
{
printf("输入的日期错误!请重新输入日期\n");
scanf("%d",&day);
}

for(i = 2003; i < year; i++)
{
leap = Year(i);
if(leap == 1) { sumday += 1; }
}
sumtmp = Month(year,month,day);
sumday += sumtmp;
ret = sumday%5;
if(ret >= 1 && ret <= 3)
{
printf("这天该打鱼!\n");
}
else
{
printf("这天该晒网!\n");
}
return 0;
}

/*判断该天是该年的第几天*/
int Month(int year,int month,int day)
{
int sum;
int leap;
switch(month)/*先计算某月以前月份的总天数*/
{
case 1:sum=0;break;
case 2:sum=31;break;
case 3:sum=59;break;
case 4:sum=90;break;
case 5:sum=120;break;
case 6:sum=151;break;
case 7:sum=181;break;
case 8:sum=212;break;
case 9:sum=243;break;
case 10:sum=273;break;
case 11:sum=304;break;
case 12:sum=334;break;
default:printf("data error");break;
}
sum = sum + day;
leap = Year(year);
if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/
sum++;
return sum;
}

/*判断该年是否是闰年*/
int Year(int year)
{
int leap;
if(year%400==0||(year%4==0&&year%100!=0))
leap = 1;/*是闰年*/
else
leap = 0;
return leap;
}

/*判断输入日期是否合法*/
int Day(int year,int month,int day)
{
int flag = 0;
if(day < 1){
flag = -1;
return flag;
}
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
if(day > 31)
flag = -1;
break;
case 4:
case 6:
case 9:
case 11:
if(day > 30)
flag = -1;
break;
case 2:
if( Year(year) && day > 29 ) flag = -1;
else if( (Year(year) == 0 )&& day > 28 ) flag = -1;
break;
}
return flag;
}
回答者:402731062 - 秀才 二级 12-11 12:09

--------------------------------------------------------------------------------

main()

#include
//三天打鱼两天晒网.c

/*输入2003年后的年月日,判断这天是该打鱼还是该晒网!*/

void main()
{
int day,month,year;
int i,sumday,leap,sumtmp,ret;
sumday = 0;
printf("请输入2003年后的年份\n");
scanf("%d",&year);
while(year < 2003)
{
printf("输入的年份错误,请重新输入2003年后的年份\n");
scanf("%d",&year);
}
printf("请输入月份\n");
scanf("%d",&month);
while(month < 1||month >12)
{
printf("输入的月份错误!请重新输入月份\n");
scanf("%d",&month);
}
printf("请输入日期\n");
scanf("%d",&day);
while( Day(year,month,day) == -1)
{
printf("输入的日期错误!请重新输入日期\n");
scanf("%d",&day);
}

for(i = 2003; i < year; i++)
{
leap = Year(i);
if(leap == 1) { sumday += 1; }
}
sumtmp = Month(year,month,day);
sumday += sumtmp;
ret = sumday%5;
if(ret >= 1 && ret <= 3)
{
printf("这天该打鱼!\n");
}
else
{
printf("这天该晒网!\n");
}
return 0;
}

/*判断该天是该年的第几天*/
int Month(int year,int month,int day)
{
int sum;
int leap;
switch(month)/*先计算某月以前月份的总天数*/
{
case 1:sum=0;break;
case 2:sum=31;break;
case 3:sum=59;break;
case 4:sum=90;break;
case 5:sum=120;break;
case 6:sum=151;break;
case 7:sum=181;break;
case 8:sum=212;break;
case 9:sum=243;break;
case 10:sum=273;break;
case 11:sum=304;break;
case 12:sum=334;break;
default:printf("data error");break;
}
sum = sum + day;
leap = Year(year);
if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/
sum++;
return sum;
}

/*判断该年是否是闰年*/
int Year(int year)
{
int leap;
if(year%400==0||(year%4==0&&year%100!=0))
leap = 1;/*是闰年*/
else
leap = 0;
return leap;
}

/*判断输入日期是否合法*/
int Day(int year,int month,int day)
{
int flag = 0;
if(day < 1){
flag = -1;
return flag;
}
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
if(day > 31)
flag = -1;
break;
case 4:
case 6:
case 9:
case 11:
if(day > 30)
flag = -1;
break;
case 2:
if( Year(year) && day > 29 ) flag = -1;
else if( (Year(year) == 0 )&& day > 28 ) flag = -1;
break;
}
return flag;

main()

#include
//三天打鱼两天晒网.c

/*输入2003年后的年月日,判断这天是该打鱼还是该晒网!*/

void main()
{
int day,month,year;
int i,sumday,leap,sumtmp,ret;
sumday = 0;
printf("请输入2003年后的年份\n");
scanf("%d",&year);
while(year < 2003)
{
printf("输入的年份错误,请重新输入2003年后的年份\n");
scanf("%d",&year);
}
printf("请输入月份\n");
scanf("%d",&month);
while(month < 1||month >12)
{
printf("输入的月份错误!请重新输入月份\n");
scanf("%d",&month);
}
printf("请输入日期\n");
scanf("%d",&day);
while( Day(year,month,day) == -1)
{
printf("输入的日期错误!请重新输入日期\n");
scanf("%d",&day);
}

for(i = 2003; i < year; i++)
{
leap = Year(i);
if(leap == 1) { sumday += 1; }
}
sumtmp = Month(year,month,day);
sumday += sumtmp;
ret = sumday%5;
if(ret >= 1 && ret <= 3)
{
printf("这天该打鱼!\n");
}
else
{
printf("这天该晒网!\n");
}
return 0;
}

/*判断该天是该年的第几天*/
int Month(int year,int month,int day)
{
int sum;
int leap;
switch(month)/*先计算某月以前月份的总天数*/
{
case 1:sum=0;break;
case 2:sum=31;break;
case 3:sum=59;break;
case 4:sum=90;break;
case 5:sum=120;break;
case 6:sum=151;break;
case 7:sum=181;break;
case 8:sum=212;break;
case 9:sum=243;break;
case 10:sum=273;break;
case 11:sum=304;break;
case 12:sum=334;break;
default:printf("data error");break;
}
sum = sum + day;
leap = Year(year);
if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/
sum++;
return sum;
}

/*判断该年是否是闰年*/
int Year(int year)
{
int leap;
if(year%400==0||(year%4==0&&year%100!=0))
leap = 1;/*是闰年*/
else
leap = 0;
return leap;
}

/*判断输入日期是否合法*/
int Day(int year,int month,int day)
{
int flag = 0;
if(day < 1){
flag = -1;
return flag;
}
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
if(day > 31)
flag = -1;
break;
case 4:
case 6:
case 9:
case 11:
if(day > 30)
flag = -1;
break;
case 2:
if( Year(year) && day > 29 ) flag = -1;
else if( (Year(year) == 0 )&& day > 28 ) flag = -1;
break;
}
return flag;
}