当前位置: 首页 > 编程日记 > 正文

C语言文件等题

1.#include <stdio.h>
double fun(int  n)
{


}
main()
{ int  n;    double  s;
  printf("\nInput n:  ");  scanf("%d",&n);
  s=fun(n);
  printf("\n\ns=%f\n\n",s);
  NONO();
}
NONO()
{/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。 */
  FILE *rf, *wf ; int n, i ; double s ;
  rf = fopen("bc.in", "r") ;
  wf = fopen("bc.out", "w") ;
  for(i = 0 ; i < 10 ; i++)
   {
    fscanf(rf, "%d", &n) ;
    s = fun(n) ;
    fprintf(wf, "%lf\n", s) ;
   }
  fclose(rf) ; fclose(wf) ;
}


分析?NONO函数干什么的?:依次读取文件bc.in里面的10个数据(测试数据),通过调用fun函数,再把结果写入文件bc.out中


2.输入字符以-1做结束标志
用if   或者
gets(s);
while(strcmp(s,"-1")!=0)//要用双引号,因是字符串


3.//输入数字,取出奇数位构成新数
#include<stdio.h>
#include <math.h>
int fun(int s)
{
 int m,i,t=0;//这不要再写int s;否则重复定义
 for(i=0;s;i++)
 {
  m=s%10;
  t+=pow(10.0,i)*m;//t别忘初始化,此处自动转换
  s/=100;
 }
 return t;
}
int main()
{
 int t;
 scanf("%d",&t);
 printf("%d\n",fun(t));
 return 0;
}

4.vc中若无符号要求,就用unsigned int,(2的32次方)int可省略;仅有int(正负2的15次方)
在vc中long和非long一样
char* p不好,这样char *p易理解;

5.c语言中auto完全无用处(从前身继承来的)

6.请问typedef和define具体的详细区别,在UCOS-II中用的是typedef而没有用define,为什么呢,两者定义的内在空间有区别吗


 #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错。例如:
#define PI 3.1415926
程序中的:area=PI*r*r 会替换为3.1415926*r*r
如果你把#define语句中的数字9 写成字母g 预处理也照样带入。

2)typedef是在编译时处理的。它在自己的作用域内给一个已经存在的类型一个别名,但是可以仅仅用在函数内部
3)typedef int * int_ptr;

#define int_ptr int *
作用都是用int_ptr代表 int * ,但是二者不同,正如前面所说 ,#define在预处理 时进行简单的替换,而typedef不是简单替换 ,而是采用如同定义变量的方法那样来声明一种类型。也就是说;

//refer to (xzgyb(老达摩))
#define int_ptr int *
int_ptr a, b; //相当于int * a, b; 只是简单的宏替换

typedef int* int_ptr;
int_ptr a, b; //a, b 都为指向int的指针,typedef为int* 引入了一个新的助记符


这也说明了为什么下面观点成立
//QunKangLi(维护成本与程序员的创造力的平方成正比)
typedef int * pint ;
#define PINT int *

那么:
const pint p ;//p不可更改,但p指向的内容可更改,不是*pint,p为const,不是她所指字符为常量
const PINT p ;//p可更改,但是p指向的内容不可更改。

pint是一种指针类型 const pint p 就是把指针给锁住了 p不可更改
而const PINT p 是const int * p 锁的是指针p所指的对象。

3)也许您已经注意到#define 不是语句 不要在行末加分号,否则 会连分号一块置换。


7.同为零才结束


#include<stdio.h>
int main()
{
 int a,b;
 while(scanf("%d%d",&a,&b),a||b)//试验过,中间用换行或者空格隔开均可
  printf("%d\n\n",a+b);
 return 0;
}


8. const int n=5;
 int a[5];


会报错


9.char a[14];
  strcmp(a,"computer");

或者char a[14]="computer";加不加大括号均可,系统自动加上结束标志
或者char a[14]={'c','o','m','p','\0'},逐个赋值必须加上结束标志


10.//把平方根写入文件中,并显示到屏幕上
#include<stdio.h>
#include<math.h>
int fun(char *fname)
{
 FILE *fp;
 int i,n;
 float x;
 if((fp=fopen(fname,"w"))==NULL)//别写成(fopen=(fname,"w"))==NULL
  return 0;
 for(i=0;i<10;i++)
 {fprintf(fp,"%d %f\n",i,sqrt((double)i));}
 printf("Suceed!\n");
 fclose(fp);
 if((fp=fopen(fname,"r"))==NULL)
  return 0;
 fscanf(fp,"%d%f",&n,&x);
 while(!feof(fp))
 {
  printf("%d %f\n",n,x);
  fscanf(fp,"%d%f",&n,&x);
 }
 fclose(fp);
 return 1;
}
int main()
{
 char fname[]="myfile.txt";
 fun(fname);
 return 0;
}


相关文章:

使用 Vml 制作立体柱状投票统计图的完整程序

作者&#xff1a;lshdic http://blog.csdn.net/lshdic/<!--以下便是完整的 JsVml 制作柱状投票统计图的完整程序,保存为HTM文件运行即可看到效果其中 array数组中的分组可以为6个也可以为2&#xff0c;3&#xff0c;4&#xff0c;5个等,运行以下程序需要您的浏览器支持VML…

Python, C++和Java代码互翻,Facebook开发首个自监督神经编译器

译者 | 刘畅出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;将早期的编程语言&#xff08;例如COBOL&#xff09;的代码库迁移到现在的编程语言&#xff08;例如Java或C&#xff09;是一项艰巨的任务&#xff0c;它需要源语言和目标语言方面的专业知识。COBOL如今仍在…

pinpoint的id的生成

traceId的生成 public String getTransactionId() {return TransactionIdUtils.formatString(agentId, agentStartTime, transactionSequence);}public static final String TRANSACTION_ID_DELIMITER "^";public static String formatString(String agentId, long …

X@X.X域名转向的实现

www.chinacs.net 中文C#技术站 当你看到csdncsdn.com时&#xff0c;你肯定把这当作电子邮件地址&#xff0c;其实这个不一定是邮件地址&#xff0c;有可能是域名。现在有越来越多的人开始使用这个形式的地址了。初看起来&#xff0c;你不要以为这个是一个什么非常了不起的技术&…

GPT-3 的到来,程序员会被 AI 取代吗?

无需任何训练&#xff0c;AI可用任何语言编程。作者 | Frederik Bussler译者 | 弯月&#xff0c;责编 | 晋兆雨头图 | CSDN 下载自东方 IC来源 | CSDN以下为译文&#xff1a;2017年的时候&#xff0c;曾有研究人员问&#xff1a;到2040年人工智能是否承担起大多数的编程工作&am…

iphone 下拉刷新控件 EGORefreshTableHeaderView 手动显示更新

参考资料:http://blog.csdn.net/ugg/article/details/7283661 在它基础上进行修改 EGORefreshTableHeaderView 绝对是ios开发中的必选插件,其用法就不再赘述. 为了能够手动的显示更新界面而不是要等到用户实际拖动才触发(比如程序刚启动时), 通过阅读它的代码可以发现,只要自己…

Eclipse create git repository failure(egit)

2019独角兽企业重金招聘Python工程师标准>>> 启动和创建的时候会出现这样的异常信息&#xff0c;具体处理办法如下&#xff1a; cd /path/to/yourRepo.git cd .. mkdir yourRepo mv yourRepo.git yourRepo cd yourRepo git config --local --bool core.bare false g…

如何用asp.net向其他服务器post一条信息

www.chinacs.net 中文C#技术站 using System;using System.Web;using System.Net;using System.IO;using System.Text;namespace SendMessage{ public bool SendMsg(MsgInfo msg){//create requesttry{WebRequest req WebRequest.Create("http://your_post_url");…

Directx11教程(11) 增加一个debug宏

现在我们在common.h中增加一个debug的宏&#xff0c;在每个d3d11函数后调用&#xff0c;如果d3d函数出错&#xff0c;它能够给出程序中错误的代码行数。 common.h代码如下&#xff1a; #pragma once #include <d3d11.h> #include <d3dx10math.h> #if defined(DEBUG…

为什么说机器学习是预防欺诈的最佳工具?

作者 | Giorgi Mikhelidze译者 | 天道酬勤&#xff0c;责编 | 晋兆雨头图 | CSDN付费下载自视觉中国随着现代技术的发展和完善&#xff0c;生活变得越来越舒适。虽然以前人们认为同时进行复杂的操作是不可能的&#xff0c;而如今计算机使这一任务变得很容易了。 与此同时&#…

集成支付宝钱包支付iOS SDK的方法与经验

没想到&#xff0c;支付宝的SDK是我目前用过的所有第三方SDK中最难用的一个了。 下载 首先&#xff0c;你要想找到这个SDK&#xff0c;都得费点功夫。现在的SDK改名叫移动支付集成开发包了&#xff0c;下载页面在 这里 的 “请点此下载集成开发包” Baidu和Googlep排在前面的支…

系统设计与架构笔记:ETL工具开发和设计的建议

好久没写博客了&#xff0c;不是自己偷懒&#xff0c;的确是没有时间哦。 最近项目组里想做一个ETL数据抽取工具&#xff0c;这是一个研发项目&#xff0c;但是感觉公司并不是特别重视,不重视不是代表它不重要&#xff0c;而是可能不会对这个项目要求太高&#xff0c;能满足我们…

如何获取主机的IP址址

http://www.aspcn.com 飞刀 &#xff08;如需转载&#xff0c;请注明文章来自http://www.aspcn.com 谢谢合作&#xff09; 这篇文章&#xff0c;我们不准备大规模的讨论技术问题。只是向大家介绍一下我们将如何获得一台主机的IP地址。在Win32 API中我们可以使用NetWork API完成…

炸裂!Google这波操作,预警了什么?

我们都知道谷歌爸爸收购了Cask Data一家公司。长期以来&#xff0c;谷歌致力于推动围绕 GoogleCloud 的企业业务&#xff0c;但在这方面一直被亚马逊和微软吊打&#xff0c;这次的收购正是为了弥补自身的短板。被收购的 Cask Data 是一家专门提供基于Hadoop的大型数据分析服务解…

百度地图设置div样式宽高为百分比不显示地图

如题&#xff0c;不显示地图只要在样式代码里面加以 position:absolute; 代码就可以了 <style type"text/css">body, html,#allmap {width:100%;height:100%;overflow: hidden;margin:0;font-family:"微软雅黑";position:absolute;}</style> 完…

在DataGrid中显示图片

兼谈 DadaGrid 模板列的创建DadaGrid 是 ASP.NET 编程中一个很重要的控件&#xff0c;其优良的可定制功能为提高它的表现力提供了极大的方便。除了与数据源直接绑定以外&#xff0c;我们还可以通过列绑定模板对 DataGrid 的列进行自定义&#xff0c;来按照我们设定的格式显示数…

程序员注意了!人社部“就业报告”:未来5年,这10个新职业有千万缺口

7月23日&#xff0c;人社部联合阿里钉钉发布了《新职业在线学习平台发展报告》&#xff0c;报告有两个核心思想&#xff1a;83%的80后遇到过职业危机&#xff0c;79%的90后担心失业。未来5年&#xff0c;物联网和人工智能人才缺口巨大&#xff0c;新职业人才需求高达千万 这上千…

编译内核出现make CONFIG_DEBUG_SECTION_MISMATCH=y错误

故障问题&#xff1a; 编译内核时出现“make CONFIG_DEBUG_SECTION_MISMATCHy” 错误提示&#xff1a; [rootserver linux-2.6.35.13]# make modules CHK include/linux/version.h CHK include/generated/utsrelease.h CALL scripts/checksyscalls.sh Build…

IOS UITabBarViewController 修改背景颜色

做iOS的都知道&#xff0c;每个项目都有UITabBarController。有的会自定义&#xff0c;有的采取系统&#xff0c;当时我也是用系统的&#xff0c;那时候还是小白&#xff0c;好多技术不太熟练&#xff0c;都用系统的&#xff0c;那时候还是1倍和2倍图片&#xff0c;那时候适配很…

ASP.NET的实时天气及24小时天气预报(C#)

ASP.NET的实时天气及24小时天气预报(C#) 修改其中的url获得其他城市的天气情况 如广州为&#xff1a; http://weather.yahoo.com/forecast/CHXX0037_c.html 注意仅适用于获得yahoo上的天气预报 GetWeather.aspx ----------------------------------- Weather24小时天气getWeath…

中科大硬核“毕业证”:“一生一芯”计划下,5位本科生带自研芯片毕业

作者 | 包云岗编辑 | 伍杏玲本文经作者授权转载自包云岗知乎【CSDN编者按】近日&#xff0c;中国科学院大学五位本科生的硬核“毕业证”引发IT圈热议&#xff0c;在“一生一芯”培养计划下&#xff0c;由五位2016级本科生主导完成一款64位RISC-V处理器SoC芯片设计并实现流片&am…

美团选择电影票

2019独角兽企业重金招聘Python工程师标准>>> 特点: 1可以放大 (两根手指),可以看到缩略图 2可以左右滑动 3上下滑动 步骤: 1绘制座位 在美团点击 转载于:https://my.oschina.net/yanglingui/blog/776852

邮件发送类,支持HTML格式,支持优先级设置

www.chinacs.net 2002-5-9 中文C#技术站 邮件发送类&#xff0c;支持HTML格式&#xff0c;支持优先级设置。通过SOCKET类实现的using System;using System.Text;using System.IO;using System.Net;using System.Net.Sockets; namespace Blood.Com.ClassLib{ /// <summary&…

手绘10张图,把CSRF跨域攻击、JWT跨域认证说得明明白白的

作者 | 写代码的明哥来源 | Python编程时光这篇文章本应该是属于 HTTP 里的一部分内容&#xff0c;但是我看内容也挺多的&#xff0c;就单独划分一篇文章来讲下。什么是跨域请求要明白什么叫跨域请求&#xff0c;首先得知道什么叫域。域&#xff0c;是指由 协议 域名 端口号 …

WYSE Thin Clinet 常用快捷键

1. 同时按住Ctrl Alt Up&#xff08;向上方向键&#xff09;&#xff0c;即可将远程连接由全屏状态切换到Window状态2. 同时按住Ctrl Alt Down&#xff08;向下方向键&#xff09;&#xff0c;即可在远程连接进程间切换&#xff08;类似于Windows系统的Alt Tab功能&…

CSS3模拟IOS滑动开关

前言 H5站点需要IOS滑动按钮的效果,想了想似乎CSS3能搞起,就折腾出来了...挺简单的..请看注释效果 代码 <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <title>CSS3模拟IOS开关</title> <style t…

PyTorch 1.6、TensorFlow 2.3、Pandas 1.1同日发布!都有哪些新特性?

作者 | 肖智清出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;7月29日&#xff0c;PyTorch 1.6、TenorFlow 2.3、Pandas 1.1恰巧同时发布。这三个库都是定期滚动更新&#xff0c;大约每个季度更新一次小版本。在AI内卷化达到“灰飞烟灭”的今日&#xff0c;仅仅会对P…

ENC28j60以太网芯片驱动程序简介

转载&#xff1a; 本介绍可分为三块内容&#xff1a; 1.以太网数据帧结构 符合IEEE802.3标准的以太网帧的长度是介于64-1516字节之间。主要由目标MAC地址、源MAC地址、类型/长度字段、数据有效负载、可选填充字段和循环冗余校验组成&#xff0c;另外在通过以太网介质发送数据包…

在ASP.NET中获取文件属性

www.chinacs.net 2001-8-13 中文C#技术站 在ASP.NET中获取文件属性&#xff08;Retrieving File Information In ASP.NET&#xff09;By Steven Smith 使用ASP.NET我们可以很容易的得到文件的相关信息&#xff0c;包括&#xff1a;文件名、路径、扩展名、大小和创建以及使用日…

javascript运动系列第九篇——碰撞运动

前面的话 碰撞可以分为碰壁和互碰两种形式&#xff0c;上篇介绍了碰壁运动&#xff0c;本文将从浅入深地介绍碰撞运动的互碰形式 碰撞检测 对于互碰形式的碰撞运动来说&#xff0c;首先要解决的是碰撞检测。对于矩形元素的碰撞检测前面的博文已经详细介绍过&#xff0c;下面主要…