当前位置:首页 » 编程语言 » 小偷c语言

小偷c语言

发布时间: 2022-06-26 04:25:52

A. c语言程序设计——警察与小偷

#include <stdio.h>
#define true 1
#define false 0
#define I 9999 /* 无穷大 */
#define N 20 /* 城市顶点的数目 */

int cost[N][N] = {
{0,3,I,I,I,1,I,I,I,I,I,I,I,I,I,I,I,I,I,I},
{3,0,5,I,I,I,6,I,I,I,I,I,I,I,I,I,I,I,I,I},
{I,5,0,4,I,I,I,1,I,I,I,I,I,I,I,I,I,I,I,I},
{I,I,4,0,2,I,I,I,6,I,I,I,I,I,I,I,I,I,I,I},
{I,I,I,2,0,I,I,I,I,7,I,I,I,I,I,I,I,I,I,I},
{1,I,I,I,I,0,1,I,I,I,2,I,I,I,I,I,I,I,I,I},
{I,6,I,I,I,1,0,6,I,I,I,7,I,I,I,I,I,I,I,I},
{I,I,1,I,I,I,6,0,2,I,I,I,3,I,I,I,I,I,I,I},
{I,I,I,6,I,I,I,2,0,8,I,I,I,4,I,I,I,I,I,I},
{I,I,I,I,7,I,I,I,8,0,I,I,I,I,5,I,I,I,I,I},
{I,I,I,I,I,2,I,I,I,I,0,4,I,I,I,3,I,I,I,I},
{I,I,I,I,I,I,7,I,I,I,4,0,3,I,I,I,4,I,I,I},
{I,I,I,I,I,I,I,3,I,I,I,3,0,3,I,I,I,5,I,I},
{I,I,I,I,I,I,I,I,4,I,I,I,3,0,7,I,I,I,2,I},
{I,I,I,I,I,I,I,I,I,5,I,I,I,7,0,I,I,I,I,3},
{I,I,I,I,I,I,I,I,I,I,3,I,I,I,I,0,5,I,I,I},
{I,I,I,I,I,I,I,I,I,I,I,4,I,I,I,5,0,8,I,I},
{I,I,I,I,I,I,I,I,I,I,I,I,5,I,I,I,8,0,6,I},
{I,I,I,I,I,I,I,I,I,I,I,I,I,2,I,I,I,6,0,4},
{I,I,I,I,I,I,I,I,I,I,I,I,I,I,3,I,I,I,4,0}
};
int dist[N]; /* 存储当前最短路径长度 */
int v0 = 'A' - 65; /* 初始点是 A */

void main()
{
int final[N], i, v, w, min;

/* 初始化最短路径长度数据,所有数据都不是最终数据 */
for (v = 0; v < N; v++) {
final[v] = false;
dist[v] = cost[v0][v];
}

/* 首先选v0到v0的距离一定最短,最终数据 */
final[v0] = true;

/* 寻找另外 N-1 个结点 */
for (i = 0; i < N-1; i++) {
min = I; /* 初始最短长度无穷大 */

/* 寻找最短的边 */
for (w = 0; w < N; w++) {
if (!final[w] && dist[w] < min) {
min = dist[w];
v = w;
}
}
final[v] = true; /* 加入新边 */

for (w = 0; w < N; w++) { /* 更新 dist[] 数据 */
if (!final[w] && dist[v] + cost[v][w] < dist[w]) {
dist[w] = dist[v] + cost[v][w];
}
}
}

for (i = 0; i < N; i++) { /* 显示到监视器 */
printf("%c->%c: %2d\t", v0 + 65, i + 65, dist[i]);
}
}
这个应该够大了

B. 谁能帮我写一个C程序,抓住小偷

甲说:”乙没有偷,是丁偷的。” B+D=1
乙说:“我没有偷,是丙偷有。” B+C=1
丙说:“甲没有偷,是乙偷的。” A+B=1
丁说:“我没有偷。” A+B+C+D=1
其中丁只说了一句话,无法判定其真假,表达式反映了四人中仅有一名是窃贱的条件。
*程序与程序注释
#include<stdio.h>
void main()
{
int i,j,a[4];
for(i=0;i<4;i++) /*假定只有第i个人为窃贱*/
{
for(j=0;j<4;j++) /*将第i个人设置为1表示窃贱,其余为0*/
if(j==i)a[j]=1;
else a[j]=0;
if(a[3]+a[1]==1&&a[1]+a[2]==1&&a[0]+a[1]==1) /*判断条件是否成立*/
{
printf("The thief is "); /*成立*/
for(j=0;j<=3;j++) /*输出计算结果*/
if(a[j])printf("%c.",j+'A');
printf("\n");
}
}
}
*运行结果
The thief is B. (乙为窃贱。)

C. 谁是小偷 要求编一个程序,帮助判断哪个人是小偷

#include"stdio.h"
intmain(intargc,char*argv[]){
inta,b,c,d,i,j,t,x;
for(a=1,b=c=d=i=0;i<4;i++){
for(j=0;j<16;j++){
t=(i&1)+(i>>1)&1+(i>>2)&1+(i>>3)&1;
x=i&1?b==0&&d==1:b==1||d==0;
x+=(i>>1)&1?b==0&&c==1:b==1||c==0;
x+=(i>>2)&1?a==0&&b==1:a==1||b==0;
x+=(i>>3)&1?d==0:d==1;
}
if(x==t){
printf("%d%d%d%d ",a,b,c,d);
break;
}
d=c,c=b,b=a,a=0;
}
return0;
}

输出:

供参考——觉得逻辑上有漏洞似的。

D. 用C语言来解答这道题

#include <stdio.h>

main()
{printf("啥鸡把玩意儿!");
return 0;
}

E. 求大神帮忙C语言抓小偷的问题

#include<stdio.h>
#include<stdlib.h>
main()
{
inti;
charwho='A';
intisFound=0;
for(i=0;i<4;i++)
{
intsum=0;
who='A'+i;
if(who!='A')sum++;
if(who=='C')sum++;
if(who=='D')sum++;
if(who!='D'&&who!='B')sum++;
if(sum==3){
printf("thethiefis%c ",who);
isFound=1;
}
}
if(!isFound)
printf("thereisnothief");
}

运行结果:the thief is C

F. C语言解题:

#include <stdio.h>
main()
{
int a,b,c,d; //定义四个变量 用来表示他是否是小偷,为1表示是小偷,0表示不是小偷
int i=1; //定义变量i用来测试4个人的说话情况
a=b=c=d=0;
while((a+b+c+d)!=1) //小偷只有一个 当他们所说的情况之和为1 说明假设是正确的
{
switch(i++)
{
case 1:a=1;c=1;d=1;d=0;break; //设第1个人说的是假话
case 2:a=0;c=0;d=1;d=0;break; //设第2个人说的是假话
case 3:a=0;c=1;d=0;break; //设第3个人说的是假话
case 4:a=0;c=1;d=1;break; //设第4个人说的是假话
default:break;
}
}
printf("第%d人说的是谎话",i-1);

}

G. 用 C语言 编写程序 (小偷问题) 【是C语言】

#include <stdio.h> int main() { int a,b,c,d; if( !(a=0)&&(c=1)&&(d=1)&&!(d=1)) printf("A是小偷"); else if( (a=0)&&!(c=1)&&(d=1)&&!(d=1)) printf("D是小偷");

H. 好晚的C语言问题

楼主忘记了优先级,算数运算优先于逻辑运算,楼上的回答正确。还有一个答案是
if((((a!=0)+(c==0)+(d==0)+(d!=0))==3)&&(a+b+c==3))
1,0的表示方法正好相反~~

I. 怎么样求解一道关于逻辑推理的题目,用c语言实现。比如破案,比如谁谁在撒谎,比如谁谁说的是真话。

比较费劲,我觉得关键是一定要搞清楚 要用什么条件表达式表示真假的组合。然后套在一堆儿循环里遍历所有的情况,找个所有条件都满足的就是了。

J. 小偷程序的特点

1、可以采集80%以上的站点,只需简单的在后台配置采集替换规则即可。
2、突破图片防盗链系统,可以将目标站的图片下载到服务器上面,提高访问效率,增加网络图片的收录。
3、支持静态生成,即使目标站服务器出现错误,本站依然不受影响(前提是开启静态生成和图片下载到本地服务器)。
4、授权版可以启用全国分站功能,自动产生长尾关键字,适合全国服务行业和信息查询服务。
语言代码1.Perl
#!/usr/bin/perl
# 通过IE浏览器中的[查看]->[源文件]可看HTML文件内容。
# perl中可以不通过浏览器直接取得HTML文件内容,用的
# 就是perl模块libWWW
use strict;
use LWP::UserAgent;
use threads::shared;
my $URL = http://*******;
my $ua = new LWP::UserAgent;
$ua->agent('Mozilla/3.0');
my ($address,$params) = split(/?/,$URL);
my $req = new HTTP::Request ('GET',$address);
$req->content_type('applicationn/x-www-form-urlencoded');
$req->content();
my $res = $ua->request($req);
my $content = $res->as_string();
# 此时$content里面是网页内容
print $content;
$URL里就是要偷数据的地址。例子中的是本人的小站。偷自己的东西,没犯法吧?
当然,这个会把网页内容打印到控制台。所以很多数据或者需要保存的时候,应该用重定向符号输出到文件。如:
perl yourf ile. pl >a.html
这样,输出的结果就保存在文件a.html中了。至于分析的语句,PERL可以使用方便而简洁的正则,限制于不同程序的不同分析,这里就不写分析语句了。
2.Active Server Pages - VBScript
ASP版本的小偷程序,也不见得有什么太大的难度。不过应用了XMLHTTP组件的功能而已,事实上,我也很惊讶ASP写这个程序的简短之处:
<%
URL = http://*******
Set objXMLHTTP = CreateObject(Microsoft.XMLHTTP)
objXMLHTTP.Open GET,URL,False
objXMLHTTP.Send
Response.Write Server.HTMLEncode(objXMLHTTP.responseText)
Set objXMLHTTP = Nothing
%>
简单不?呵呵....
3.Active Server Pages - JScript
从原理来说,这个和VBScript差不多。从语句来说,这个跟VBScript也差不多-毕竟,它们都用同一个组件:
<script language=JScript>
var xmlhttp = new ActiveXObject(Msxml2.XMLHTTP.4.0);
xmlhttp.Open(POST, http://*******, false);
xmlhttp.Send();
alert(xmlhttp.responseText);
</script>
4.Java
Java用来干这个,实在有点大材小用的感觉:
import jav a .io.*;
import jav a. net.*;
public class getURLContent
{
public static void main(String args[]) throws MalformedURLException,IOException
{
URL url = new URL(url address);
BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));
while(reader.ready()){
System.out.println(reader.readLine());
}
}
}
5.php
php:
$url='http://网址';
echo file_get_contents($url);
?>
6.Asp. Net
c#:
System .Net.WebClient webclient = new System .Net.WebClient();
webclient.DownloadString(http://*******);
vb.n et:
Dim webclient As New System .Net.WebClient()
webclient.DownloadString(http://*******)
实例
QQ网站上的天气程序
代码如下:
<%
On Error Resume Next
Server.ScriptTimeOut=9999999
Function getHTTPPage(Path)
t = GetBody(Path)
getHTTPPage=BytesToBstr(t,GB2312)
End function
首先,进行小偷程序的一些初始化设置,以上代码的作用分别是忽略掉所有非致命性错误,把小偷程序的运行超时时间设置得很长(这样不会出现运行超时的错误),转换原来默认的UTF-8编码转换成GB2312编码,否则直接用XMLHTTP组件调用有中文字符的网页得到的将是乱码。
Function GetBody(url)
on error resume next
Set Retrieval = CreateObject(Microsoft.XMLHTTP)
With Retrieval
.Open Get, url, False, ,
.Send
GetBody = .ResponseBody
End With
Set Retrieval = Nothing
End Function
然后调用XMLHTTP组件创建一个对象并进行初始化设置。
Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject(adodb.stream)
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
Function Newstring(wstr,strng)
Newstring=Instr(lcase(wstr),lcase(strng))
if Newstring<=0 then Newstring=Len(wstr)
End Function
处理抓取回来的数据需要调用adodb.stream组件并进行初始化设置以下即为页面显示部分
<%
Dim wstr,str,url,start,over,city
’定义一些需要使用到的变量
city = Request.QueryString(id)
’程序传回的ID变量(即用户选择的城市)赋给id
url=http://appnews-qq-com/cgi-bin/news_qq_search?city=&city&
这里设置需要抓取的页面地址,当然你也可以直接指定某个地址而不使用变量
wstr=getHTTPPage(url)
获取指定页面的全部数据
start=Newstring(wstr, <html>)
这里设置需要处理的数据的头部,这个变量应视不同情况而设置,具体内容可以通过查看需要抓取的页面的源代码来确定。因为在这个程序里我们需要抓取整个页面,所以设置为页面全部抓取。注意,设置的内容必须是页面内容唯一的,不可以重复。
over=Newstring(wstr, </HTML>)
和start相对应的就是需要处理的数据的尾部,同样的,设置的内容必须是页面中唯一的。
body=mid(wstr,start,over-start)
’设置显示页面的范围
下面就是动用干坤挪移+++的时候了,通过replace可以用一些字符替换掉数据中指定的字符。
body = replace(body,skin1,新浪天气预报 - 麦小偷网络)
body = replace(body,http://appnews-qq-com/cgi-bin/news_qq_search?city,tianqi.asp?id)
本程序中已经完成了替换的工作,如果有其他需要的话可以继续进行类似的替换操作。
response.write body
%>
替换完需要修改的内容后,就可以把修改的内容显示在页面上了。至此程序结束

热点内容
ps存储显示不含通道 发布:2024-05-05 09:32:35 浏览:101
如何用安卓做一个识物界面表 发布:2024-05-05 09:29:28 浏览:97
如何编译linux内核模块 发布:2024-05-05 09:27:25 浏览:167
为什么apple验证无法连接服务器 发布:2024-05-05 09:20:35 浏览:659
linuxscript 发布:2024-05-05 09:19:49 浏览:323
asp编程词典 发布:2024-05-05 09:09:50 浏览:525
引流群控脚本 发布:2024-05-05 08:42:14 浏览:178
sql测试题和答案 发布:2024-05-05 08:42:09 浏览:893
https加密链接 发布:2024-05-05 08:28:35 浏览:445
对等局域网与客户机服务器有什么不同 发布:2024-05-05 07:51:15 浏览:175